我想学网站建设需要选择什么书,黄页推广平台有哪些,重庆网站建设选圣矢,企业黄页官网#x1f389;#x1f389; 在本次python文章中#xff0c;主要通过定义一个排序方法#xff0c;实现一组数列能够按照另一组数列指定的位置进行重新排序输出#xff0c;默认正序排序#xff0c;可通过True表示逆序输出 目录1、知识点2、数列和元组1#xff09;错误遍历方… 在本次python文章中主要通过定义一个排序方法实现一组数列能够按照另一组数列指定的位置进行重新排序输出默认正序排序可通过True表示逆序输出 目录1、知识点2、数列和元组1错误遍历方式2正确遍历方式3下标方式遍历4enumerate方式遍历5逆序技巧3、自定义排序规则4、自定义排序编码1函数命名2定义变量3实现效果5、常见排序算法1、知识点
⭐️在实现自定义排序前先来了解下基本的知识点和简单举例
编号语言或插件修饰符说明1pythondef定义方法关键词2pythonlist()数列就是数组方括号括起来值遍历只能获取到值3pythontule()元组括号括起来值遍历可获取到值和下标4pythonenumerate()函数用于遍历序列中的元素以及它们的索引5pythonlen()统计长度6python逆序小技巧[1,2,3,4,5][::-1]
2、数列和元组
1错误遍历方式
list数列结合for循环遍历时只能遍历值无法获取到下标如下方式会报错
定义变量并赋值list[python,is,very,good,code] 2正确遍历方式
对于以为数组for循环遍历直接就是值而不是下标
3下标方式遍历
可以获取数组长度然后结合for和range通过下标0开始进行遍历如下
代码如下
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# 2023-02-16list[python,is,very,good,code]listLengthlen(list)
for index in range(listLength):valuelist[index]print(f下标{index}值{value})4enumerate方式遍历
还有一种方式就是将数列和元组通过enumerate方式遍历
格式注意顺序第一个是索引第二个参数是值
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# 2023-02-16list[python,is,very,good,code]for index,value in enumerate(list):print(f下标{index},值{value})5逆序技巧
数列逆序输出小技巧-1表示从最后一个值反序输出 [1,2,3,4,5][::-1]
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# 2023-02-16list[python,is,very,good,code]
listNewlist[::-1]
print(f正序输出{list}\r\n)
print(f逆序输出{listNew}\r\n)原则Write Less Do More! 简介一只喜欢全栈方向的程序员专注基础和实战分享欢迎咨询尽绵薄之力答疑解惑 3、自定义排序规则
1按照order的元素作为lst对应位置的元素的应该顺序
2并按照该顺序重新排列lst返回排序后的结果列表
3支持逆序
4、自定义排序编码
1函数命名
定义函数名为sort_by
def sort_by(lst:list, order:list, reverseFalse)-list:pass2定义变量
定义两组list数列如下
list[python,is,very,good,code]
numValue[19,95,11,29,5,26,3,6]3实现效果
通过上面的一些知识点了解即可完成数列的自定义正序排序和逆序排序 通过指定下标进行输出并可设置逆序输出
完整代码如下
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# 2023-02-16
import sys def sort_by(lst:list, order:list, reverseFalse) - list:passnew_list []for i in range(len(lst)):new_list.append(i)for index,value in enumerate(lst):position order[index] - 1new_list[position] valueif reverseTrue:return new_list[::-1]else:return new_listlist[python,is,very,good,code]
numValue[3,2,1,5,4]print(sort_by(list, numValue)) print(sort_by(list, numValue, True)) 5、常见排序算法
编号算法名称说明1插入排序插入到已经排好序的有序表中2选择排序选最小或最大放到排序位置3冒泡排序重复地走访过要排序的元素列4归并排序将已有序的子序列合并得到完全有序的序列5快速排序通过分界值将数组分成左右两部分6希尔排序是插入排序的一种又称“缩小增量排序总结温故而知新入门开发语言就是需要不断的把基础打稳才能更好的进阶