1、组织列表
组织列表:将列表元素以特定的顺序呈现出来。
1.1 使用方法sort()对列表进行永久性排序
示例:
1 cars = ['hongqi','audi','toyota','jiefang','changcheng','bmw'] 2 print(cars) #打印列表 3 cars.sort() #对列表使用方法sort() 4 print(cars) #打印使用方法sort()后的列表,观察列表的变化
结果:
['hongqi', 'audi', 'toyota', 'jiefang', 'changcheng', 'bmw'] #原始列表 ['audi', 'bmw', 'changcheng', 'hongqi', 'jiefang', 'toyota'] #可以观察到列表元素按照首字母顺序进行排列,方法sort()永久性地修改了列表元素的排列顺序
对列表元素使用方法sort() 【括号内为空】:使列表元素的排列顺序永久性按照首字母顺序排列,无法恢复到原来的排列顺序。
同样,也可以使用方法sort() 【括号内:reverse=True】是列表元素按照与字母相反的顺序排列:向sort方法传递参数reverse=True。
示例:
1 cars = ['hongqi','audi','toyota','jiefang','changcheng','bmw'] 2 print(cars) #打印列表 3 cars.sort(reverse=True) #对列表使用方法sort(),并向方法sort()传递参数reverse=True 4 ##注意:这里的True首字母要大写,小写true Python会产生报错信息 5 print(cars) #打印使用方法sort(reverse=True)后的列表,观察列表的变化
结果:
1 ['hongqi', 'audi', 'toyota', 'jiefang', 'changcheng', 'bmw'] #原始列表 2 ['toyota', 'jiefang', 'hongqi', 'changcheng', 'bmw', 'audi'] #使用方法sort(reverse=True)后,列表元素永久性按照与字母顺序相反的顺序排列
如果列表元素是汉字,那么实验结果如何呢?
示例:
1 cars = ['红旗','奥迪','本田','解放','长城','宝马'] 2 print(cars) #打印列表 3 cars.sort(reverse=True) #对列表使用方法sort(),并向方法sort()传递参数reverse=True 4 ##注意:这里的True首字母要大写,小写true Python会产生报错信息 5 print(cars) #打印使用方法sort(reverse=True)后的列表,观察列表的变化
结果:
['红旗', '奥迪', '本田', '解放', '长城', '宝马'] #原始列表 ['长城', '解放', '红旗', '本田', '宝马', '奥迪'] #使用方法sort(reverse=True)后的列表,这里我不理解为什么长城会在最后面???
1.2 使用函数sorted()对列表进行临时排序
要保留列表元素原来的排列顺序,同时以特定的顺序显示它们,可以使用函数sorted(),函数sorted()可以按特定顺序显示列表元素,同时不影响它们在列表中的原始排列顺序。
示例:
1 cars = ['hongqi','audi','toyota','jiefang','changcheng','bmw'] 2 print(cars) #打印列表 3 print(sorted(cars)) #对列表使用函数sorted(),按字母顺序打印列表 4 print(sorted(cars,reverse=True)) 5 #对列表使用函数sorted(),并向函数传递参数reverse=True,按与字母顺序相反的顺序打印列表 6 print(cars) #再次打印列表
结果:
1 ['hongqi', 'audi', 'toyota', 'jiefang', 'changcheng', 'bmw'] #原始列表 2 ['audi', 'bmw', 'changcheng', 'hongqi', 'jiefang', 'toyota'] #对列表调用函数sorted(),让列表元素按字母顺序进行排列 3 ['toyota', 'jiefang', 'hongqi', 'changcheng', 'bmw', 'audi'] #对列表调用函数sorted(),并向函数sorted()传递参数reverse=True,按与字母顺序相反的顺序显示列表。 4 ['hongqi', 'audi', 'toyota', 'jiefang', 'changcheng', 'bmw'] #打印列表,发现对列表调用函数sorted()后,列表元素的排列顺序并没有变
注意:在并非所有值都是小写时,按字母顺序排列列表要复杂些,这里我们暂时先不用理会,因为大多数排序方式都是基于以上方法和函数。
1.3 使用方法reverse()倒着打印列表
要反转列表元素的排列顺序,可使用方法reverse()。
示例:
1 cars = ['hongqi','audi','toyota','jiefang','changcheng','bmw'] 2 print(cars) #打印列表 3 cars.reverse() #对列表使用方法reverse 4 print(cars) #打印列表
结果:
['hongqi', 'audi', 'toyota', 'jiefang', 'changcheng', 'bmw'] #原始列表 ['bmw', 'changcheng', 'jiefang', 'toyota', 'audi', 'hongqi'] #可以看到列表元素已按相反顺序排列
注意:reverse()不是指按照与字母顺序相反的顺序排列列表元素,而只是反转列表元素的排列顺序;方法reverse()永久性地修改元素的排列顺序,但随时可以恢复到原来的排列顺序,为此只需要对列表再次调用reverse即可。
1.4 使用函数len()确定列表的长度
示例:
cars = ['hongqi','audi','toyota','jiefang','changcheng','bmw'] print(len(cars)) #调用函数len(),确定列表长度
输出结果:
6 #列表中有6个元素,因此其长度为6
------------------ (program exited with code: 0) 请按任意键继续. . .
注意:Python计算列表元素数时,从1开始,因此我们使用函数len()确定列表长度时,不会遇到差一错误。