dict
Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。
d={'zhang':98,'li':97,'wang':96}
print(d['zhang'])
把数据放入dict的方法,除了初始化时指定外,还可以通过key放入:
>>>d['Adam'] =67
>>>d['Adam']
67
由于一个key只能对应一个value,所以,多次对一个key放入value,后面的值会把前面的值冲掉:
>>>d['Jack'] =90
>>>d['Jack']90
>>>d['Jack'] =88
>>>d['Jack']
88
注意:如果key不存在,dict就会报错
要避免key不存在的错误,有两种办法,一是通过in判断key是否存在:
>>>'Thomas' in d
False
二是通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:
要删除一个key,用pop(key)方法,对应的value也会从dict中删除:
>>>d.pop('Bob')75
>>>d{'Michael':95,'Tracy':85}
和list比较,dict有以下几个特点:
查找和插入的速度极快,不会随着key的增加而变慢;
需要占用大量的内存,内存浪费多。
而list相反:
查找和插入的时间随着元素的增加而增加;
占用空间小,浪费内存很少。
所以,dict是用空间来换取时间的一种方法
dict可以用在需要高速查找的很多地方,在Python代码中几乎无处不在,正确使用dict非常重要,需要牢记的第一条就是dict的key必须是不可变对象
set
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
要创建一个set,需要提供一个list作为输入集合: