列表(list) | 元组(tuple) | 字符串(str) | 集合(set) | 字典(dict) | |
元素数量 | 支持多个 | 支持多个 | 支持多个 | 支持多个 | 支持多个 |
元素类型 | 任意类型 | 任意类型 | 仅字符 | 任意类型 | 键值对 |
下标索引 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
重复元素 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
可修改性 | 支持 | 不支持 | 不支持 | 支持 | 支持 |
数据有序 | 是 | 是 | 是 | 否 | 否 |
数据容器 | 应用场景 |
列表(list) | 一批数据,可修改、可重复的存储场景 |
元组(tuple) | 一批数据,不可修改、可重复的存储场景 |
字符串(str) | 一串字符串的存储场景 |
集合(set) | 一批数据,去重存储场景 |
字典(dict) | 一批数据,可用Key检索Value的存储场景 |
在遍历上:
语法:len(容器)
具体应用:
my_list=['加菲猫','欧迪','乔恩']
my_tuple=(1,2,3,4,5)
my_str='my heart go on'
my_set={'a','加菲猫','s',5,0,'加菲猫'}
my_dict={'静夜思':'李白','江雪':'柳宗元','征人怨':'柳中庸','夜雨寄北':'李商隐'}
print("数组内元素数量为:%d"%len(my_list))
print("元组内元素数量为:%d"%len(my_tuple))
print("字符串内元素数量为:%d"%len(my_str))
print("集合内元素数量为:%d"%len(my_set))
print("字典内元素数量为:%d"%len(my_dict))
输出:
数组内元素数量为:3
元组内元素数量为:5
字符串内元素数量为:14
集合内元素数量为:5
字典内元素数量为:4
语法:max(容器)
具体应用:
my_list=[8,2,5,7,2]
my_tuple=(1,2,3,4,5)
my_str='my heart go on'
my_set={7,3,5,6,1,4}
my_dict={'key1':'a','key2':'b','key3':'c','key4':'d'}
print(f"数组内最大元素为:{max(my_list)}")
print(f"元组内最大元素为:{max(my_tuple)}")
print(f"字符串最大元素量:{max(my_str)}")
print(f"集合内最大元素为:{max(my_set)}")
print(f"字典内最大元素为:{max(my_dict)}")
输出:
数组内最大元素为:8
元组内最大元素为:5
字符串内最大元素为:y
集合内最大元素为:7
字典内最大元素为:key4
语法:min(容器)
具体应用:
my_list=[8,2,5,7,2]
my_tuple=(1,2,3,4,5)
my_str='my heart go on'
my_set={7,3,5,6,1,4}
my_dict={'key1':'a','key2':'b','key3':'c','key4':'d'}
print(f"数组内最小元素为:{min(my_list)}")
print(f"元组内最小元素为:{min(my_tuple)}")
print(f"字符串内最小元素为:{min(my_str)}")
print(f"集合内最小元素为:{min(my_set)}")
print(f"字典内最小元素为:{min(my_dict)}")
输出:
数组内最小元素为:2
元组内最小元素为:1
字符串内最小元素为:
集合内最小元素为:1
字典内最小元素为:key1
语法:list(容器) 功能:将给定容器转换为列表
语法:tuple(容器) 功能:将给定容器转换为元组
语法:str(容器) 功能: 将给定容器转换为字符串
语法:set(容器) 功能: 将给定容器转换为集合
字典元素是键值对类型,不支持随意转换
具体应用:
my_tuple=(1,2,3,4,5)
my_str='my heart go on'
my_set={7,3,5,6,1,4}
my_dict={'key1':'a','key2':'b','key3':'c','key4':'d'}
print(f"数组转数组的结果为:{list(my_list)}")
print(f"元组转数组的结果为:{list(my_tuple)}")
print(f"字符串转数组的结果为:{list(my_str)}")
print(f"集合转数组的结果为:{list(my_set)}")
print(f"字典转数组的结果为:{list(my_dict)}")
print(f"数组转元组的结果为:{tuple(my_list)}")
print(f"元组转元组的结果为:{tuple(my_tuple)}")
print(f"字符串转元组的结果为:{tuple(my_str)}")
print(f"集合转元组的结果为:{tuple(my_set)}")
print(f"字典转元组的结果为:{tuple(my_dict)}")
print(f"数组转字符串的结果为:{str(my_list)}")
print(f"元组转字符串的结果为:{str(my_tuple)}")
print(f"字符串转字符串的结果为:{str(my_str)}")
print(f"集合转字符串的结果为:{str(my_set)}")
print(f"字典转字符串的结果为:{str(my_dict)}")
print(f"数组转集合的结果为:{set(my_list)}")
print(f"元组转集合的结果为:{set(my_tuple)}")
print(f"字符串转集合的结果为:{set(my_str)}")
print(f"集合转集合的结果为:{set(my_set)}")
print(f"字典转集合的结果为:{set(my_dict)}")
输出:
数组转数组的结果为:[8, 2, 5, 7, 2]
元组转数组的结果为:[1, 2, 3, 4, 5]
字符串转数组的结果为:['m', 'y', ' ', 'h', 'e', 'a', 'r', 't', ' ', 'g', 'o', ' ', 'o', 'n']
集合转数组的结果为:[1, 3, 4, 5, 6, 7]
字典转数组的结果为:['key1', 'key2', 'key3', 'key4']
数组转元组的结果为:(8, 2, 5, 7, 2)
元组转元组的结果为:(1, 2, 3, 4, 5)
字符串转元组的结果为:('m', 'y', ' ', 'h', 'e', 'a', 'r', 't', ' ', 'g', 'o', ' ', 'o', 'n')
集合转元组的结果为:(1, 3, 4, 5, 6, 7)
字典转元组的结果为:('key1', 'key2', 'key3', 'key4')
数组转字符串的结果为:[8, 2, 5, 7, 2]
元组转字符串的结果为:(1, 2, 3, 4, 5)
字符串转字符串的结果为:my heart go on
集合转字符串的结果为:{1, 3, 4, 5, 6, 7}
字典转字符串的结果为:{'key1': 'a', 'key2': 'b', 'key3': 'c', 'key4': 'd'}
数组转集合的结果为:{8, 2, 5, 7}
元组转集合的结果为:{1, 2, 3, 4, 5}
字符串转集合的结果为:{'h', 'g', 'o', 'n', 'r', 'e', 'm', ' ', 'y', 'a', 't'}
集合转集合的结果为:{1, 3, 4, 5, 6, 7}
字典转集合的结果为:{'key3', 'key2', 'key4', 'key1'}
注意:字典转换成数组、元组、集合时,value值会被抛弃。
语法:sorted(容器, [reverse=True]) (True升序False降序)
功能:将给定容器进行排序 (排序后都会得到列表(list)对象)
具体应用:
my_list=[8,2,5,7,2]
my_tuple=(1,2,3,4,5)
my_str='my heart go on'
my_set={7,3,5,6,1,4}
my_dict={'key1':'a','key2':'b','key3':'c','key4':'d'}
print(f"数组的升序排序结果:{sorted(my_list)}")
print(f"元组的升序排序结果:{sorted(my_tuple)}")
print(f"字符串的升序排序结果:{sorted(my_str)}")
print(f"集合的升序排序结果:{sorted(my_set)}")
print(f"字典的升序排序结果:{sorted(my_dict)}")
输出:
数组的升序排序结果:[2, 2, 5, 7, 8]
元组的升序排序结果:[1, 2, 3, 4, 5]
字符串的升序排序结果:[' ', ' ', ' ', 'a', 'e', 'g', 'h', 'm', 'n', 'o', 'o', 'r', 't', 'y']
集合的升序排序结果:[1, 3, 4, 5, 6, 7]
字典的升序排序结果:['key1', 'key2', 'key3', 'key4']
注意:在排序过程中,字典的value值会被抛弃。
如果我们想得到降序排序怎么做呢?需要添加参数[reverse=True],语法为sorted(容器, reverse=True),reverse有反转的意思,reverse=True表示把升序结果进行反转。
具体应用:
my_list=[8,2,5,7,2]
my_tuple=(1,2,3,4,5)
my_str='my heart go on'
my_set={7,3,5,6,1,4}
my_dict={'key1':'a','key2':'b','key3':'c','key4':'d'}
print(f"数组的升序排序结果:{sorted(my_list,reverse=True)}")
print(f"元组的升序排序结果:{sorted(my_tuple,reverse=True)}")
print(f"字符串的升序排序结果:{sorted(my_str,reverse=True)}")
print(f"集合的升序排序结果:{sorted(my_set,reverse=True)}")
print(f"字典的升序排序结果:{sorted(my_dict,reverse=True)}")
输出:
数组的升序排序结果:[8, 7, 5, 2, 2]
元组的升序排序结果:[5, 4, 3, 2, 1]
字符串的升序排序结果:['y', 't', 'r', 'o', 'o', 'n', 'm', 'h', 'g', 'e', 'a', ' ', ' ', ' ']
集合的升序排序结果:[7, 6, 5, 4, 3, 1]
字典的升序排序结果:['key4', 'key3', 'key2', 'key1']