6.7 数据容器的通用操作

在本篇中学习数据容器的通用操作

统计容器的元素个数 len

前几篇中都有提到,不做演示

统计容器的最大元素 max

1
2
list =  [1,2,3,4,5]
print(max(list))

统计容器的最小元素 min

1
2
list =  [1,2,3,4,5]
print(min(list))

注意:字符串的比较大小原则按照ASCII表顺序比较,从第一个字符开始一位位比较只要有一个字符大整体就大

类型转换

1
2
3
4
5
6
7
list = ['a','b','c','d','e']
A = tuple(list)
B = str(list)
C = set(list)
print(A,type(A))
print(B,type(B))
print(C,type(C))

需要注意:

字符串转列表

1
2
s = 'abcde'
print(list(s))		# 输出['a', 'b', 'c', 'd', 'e']

字典转列表

1
2
dict = {'key1':1,'key2':2,'key3':3}
print(list(dict))		# 输出['key1', 'key2', 'key3'] 舍弃了value

字典转字符串

1
2
dict = {'key1':1,'key2':2,'key3':3}
print(str(dict))		# 输出{'key1': 1, 'key2': 2, 'key3': 3} 全部保留

排序

此处为《数据容器:列表》2.9 列表的排序 的复制版本

见链接 数据容器:列表

默认升序(数字从小到大,首字母从前到后),且会修改当前列表

1
2
3
4
5
6
list1 = [10, 8, 3, 22, 33, 7, 11, 100, 54]
list2 = ['f','b','d','c','a','e']
list1.sort()
list2.sort()
print(list1)
print(list2)

可选参数:reverse 降序

1
2
3
list = [1,2,3,4,5]
list.sort(reverse=True)
print(list)

可选参数:key 自定义排序

1
2
3
list = ['java','python','C++','go']
list.sort(key=len)	#此处以长度为参考量,仅为其中一种用法
print(list)

你也可以将其组合

1
2
3
list = ['java','python','C++','go']
list.sort(key=len,reverse=True)	
print(list)

sorted()函数

用法与sort()一致,但是不会修改列表本身,而是将修改后的列表创建一个副本。简而言之,你需要一个变量来接收它。

1
2
3
list = ['java','python','C++','go']
a = sorted(list,key=len,reverse=True)
print(a)

我们来比较一下二者的区别

1
2
3
4
5
6
7
8
list1 = [5,4,3,2,1]
list2 = [5,4,3,2,1]
list3 = list1.sort()
list4 = sorted(list2)
print(list1)	#[1, 2, 3, 4, 5]	列表本身也被修改
print(list2)	#[5, 4, 3, 2, 1]	可见列表本身未被修改
print(list3)	#None	因为sort()函数不会传出修改后的列表
print(list4)	#[1, 2, 3, 4, 5]	
Licensed under CC BY-NC-SA 4.0
已存在于互联网
发表了126篇文章 · 总计210.25k字
萌ICP备20267077号
Powered by ctOS