python之dict与set

dict全称dictionary,使用键-值(key-value)存储,书写一个dictshell

name={:::}
(name[])

当数据量大时,字典比列表和元组速度快ide

dict实现原理和查字典是同样的,假设字典包含一万字,list查询方法是一个一个查找,知道找到为止,dict是查这个字对应的页码,而后直接找到该页。排序


第二种方式书写字典内存

name['xy']=24rem


调用与更新。get

name['xy']数学

name['xy']=55it

name['xy']io

若是键不存在,会报异常ast

>>> name['sss']

Traceback (most recent call last):

  File "<pyshell#22>", line 1, in <module>

    name['sss']

KeyError: 'sss'


要避免key不存在的错误,有两种办法,一是经过in判断key是否存在,

blob.png

二是经过dict提供的get()方法,若是key不存在,能够返回None(交互模式不返回),或者本身指定的value

blob.png


dict删除pop()

blob.png

dict和list与tuple的优缺点

dict查询速度快,占用大量内存,list与tuple查询速度慢,占用内存小

dict的keys是不可变的,所以list不能做为dict的key



set

set与dict相似,也是一组key的集合,可是不存储value,因为key不能重复,因此,在set中,没有重复的key,(无顺序的)

要建立一个set,须要提供一个list做为输入集合

blob.png

经过add(key)方法能够添加元素到set中,能够重复添加,但不会有效果

blob.png

经过remove(key)方法能够删除元素

blob.png

set能够当作数学意义上的无序和无重复元素的集合,所以,两个set能够作数学意义上的交际,并集等操做:

blob.png


str.replace()替换等于从新赋值,list.sort()排序

相关文章
相关标签/搜索