python_字典元组集合

一。字典

用途:存储多个数据的

与列表对比:

相同点:多是存储多个数据

不同点:1)字典能够清楚表达所存储的每个元素的含义

    2)列表是有序的,字典是无序的

注意点:1)字典的key是有要求的不能重复,如果两个key值相等,那么在获取这个key对应的值时以最后写入的数据为准(不建议这样玩,字典是无序的)。

    2)字典是无序的,不能使用切片和索引操作

my_dict={key:value,key2:value2,key3:value3}

1)长度

my_music = {"like": "十一年", "dislike":"荷塘月色", "good": "海阔天空"}
print(len(my_music))
#print(len(my_music[0]))#KeyError错误
运行结果:

2)修改

注意:可以修改key对应的value值,key不可修改

my_music['like'] = '凉凉'
print(my_music)
运行结果:

3)删除

pop()

my_music = {"like": "十一年", "dislike":"荷塘月色", "good": "海阔天空"}
print(my_music.pop("like")) #删除元素展示
print(my_music)
运行结果如下:

4)根据value值获取key值

game={"石头":1,"剪刀":2,"布":3,"退出":4}
def get_keys(d, value):
return [k for k,v in d.items() if v == value]

print(get_keys(game, 2))
运行结果:

二。元组

 元组表示:()

与列表/字典对比:

不同点:元组是不可变的类型,列表与字典是可变得类型。

    与字典相比,元组是有序得可以使用索引和切片

相同点:与列表相同时有序得,可以使用索引和切片

优点:元组得性能强于列表

注意点:一个元素得元组,需要在元素后面加逗号

name1 = ('yuz') #str
name2 = ('yuz', ) #tuple
print(len(name1))
print(len(name2))
print(type(name1))
print(type(name2))
运行结果:

 1)元组操作

解包

注意:解包数据需要对应,否则报错ValueError

a, b, c = ('11', '22', '33')
print(a)
print(b)
print(c)
运行结果:

数据不对应

a, b= ('11', '22', '33')
print(a)
print(b)
运行结果:

三。集合

 表示方法:set{}

注意点:集合是无序得,元素是可变得

作用:去重。

与列表/字典/元组区别:

相同点:与字典一样是无序得,不可使用索引切片。

    与列表/字典相同,数据是可变得。

不同点:与元组相比数据是可变得。

my_set = {"11", '22', '33'}
print(my_set)
print(len(my_set))
print(type(my_set))
运行结果:

1)去重

my_list3=['11','22','33','33']
print( list(set(my_list3) ))
运行结果:

原文地址:https://www.cnblogs.com/newsss/p/12760609.html