Python 程序设计入门(007)—— 列表的操作(2):列表元素的排序及统计操作

Python 程序设计入门(007)—— 列表的操作(2):列表元素的排序及统计操作

一、列表元素的排序

1、使用 sort() 方法对列表元素进行排序

sort() 方法排序区分大小写,先排序首字母为大写的,再排序首字母为小写的。sort() 方法会改变原列表的排列循序。

sort() 方法的语法格式如下:

listname.sort(key=NONE[,reverse=False])

说明:

(1)默认的排序规则为:先对大写字母进行排序,然后再对小写字母进行排序。升序排列。

(2)可以设置 key = str.lower 参数忽略大小写。

(3)设置 reverse = True 实现降序排列。

例如:

list1=["Jack",'Mark',"tom","Black","jerry","White"]
list1.sort()
print(list1)
list1.sort(key=str.lower)
print(list1)
list1.sort(key=str.lower,reverse=True)
print(list1)

运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
['Black', 'Jack', 'Mark', 'White', 'jerry', 'tom']
['Black', 'Jack', 'jerry', 'Mark', 'tom', 'White']
['White', 'tom', 'Mark', 'jerry', 'Jack', 'Black']

2、使用 sorted() 函数对列表进行排序

sorted() 函数将列表排序后赋值给其他列表,不改变原列表中元素的顺序。语法格式如下:

listname_new = sorted(listname, key=NONE, reverse=False)

例如:

list1 = ["Jack",'Mark',"tom","Black","jerry","White"]
list2 = sorted(list1)
list3 = sorted(list1,key=str.lower)
list4 = sorted(list1,reverse=True)
print(list1)
print(list2)
print(list3)
print(list4)

运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
['Jack', 'Mark', 'tom', 'Black', 'jerry', 'White']
['Black', 'Jack', 'Mark', 'White', 'jerry', 'tom']
['Black', 'Jack', 'jerry', 'Mark', 'tom', 'White']
['tom', 'jerry', 'White', 'Mark', 'Jack', 'Black']

3、使用 reverse() 方法翻转列表

reverse() 方法将列表倒序排序,语法格式如下:

listname.reverse()

例如:

list1 = ["Jack",'Mark',"tom","Black","jerry","White"]
list1.reverse()
print(list1)

运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
['White', 'jerry', 'Black', 'tom', 'Mark', 'Jack']

二、对列表中元素的统计操作

1、统计列表中的元素个数

使用 len() 函数可以统计列表中元素的个数。语法格式如下:

len(listname)
list1 = ["Jack",'Mark',"tom","Black","jerry","White"]
str1="I'm a student."
print(len(list1))
print(len(str1))

运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
6
14

2、统计列表中某个元素出现的次数

使用 count() 方法可以统计某个元素出现的次数。语法格式如下:

listname.len()

例如:

list1 = [2,3,5,7,11,13,13]
print(list1.count(3))
print(list1.count(13))

运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
1
2

3、查找指定的值在列表中的索引

使用 index() 方法返回具有指定值的第一个元素的索引。语法格式如下:

listname.index(元素)

例如:

list1 = [2,3,5,7,11,13,13,5,7,25,7,29]
print(list1.index(7))     #第一个7的索引为3 
print(list1.index(7,4))   #第4个元素开始,第一个7为8

运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
3
8

4、对列表中的元素求和

使用 sum() 函数实现对列表中元素的求和。sum() 函数的语法格式如下:

sum(listname)

例如:

list1 = [2,3,5,7,11,13,13,5,7,25,7,29]
print(sum(list1))          # 对所有元素求和
print(sum(list1[1:4]))     # 对[3,5,7]求和
print(sum(list1[-4:-1]))   # 对[7,25,7]求和

运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
127
15
39

5、使用 for 循环打印列表元素

语法格式如下:

for x in 列表名: 
    print(x)

例如:

list1 = [1,2,3,4,5]
list2 = ["Jack","Mark","Tom","Jerry","Kate"]
for item1 in list1:print(item1)
for item2 in list2:print(item2)
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
1
2
3
4
5
Jack
Mark
Tom
Jerry
Kate

使用 zip() 函数可以将可迭代的对象打包,将对象中对应的元素打包成一个个的元组,然后返回由这些元组组成的列表。语法如下:

zip(iterable, ...)

例如:

list1 = [1,2,3,4,5]
list2 = ["Jack","Mark","Tom","Jerry","Kate"]
list3 = [["20200214111","刘明"],["20200214112","张静静"],["20200214113","刘宏"]]
list4 = [25,30,28]
for item1,item2 in zip(list1,list2):
    print(str(item1)+"."+item2)
for item3,item4 in zip(list3,list4):
    print("学号:"+item3[0]+"\t姓名:"+item3[1]+"\t年龄:"+str(item4))
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
1.Jack
2.Mark
3.Tom
4.Jerry
5.Kate
学号:20200214111	姓名:刘明	年龄:25
学号:20200214112	姓名:张静静	年龄:30
学号:20200214113	姓名:刘宏	年龄:28

猜你喜欢

转载自blog.csdn.net/weixin_44377973/article/details/132122395