标签:增加 索引查找 add 速度 比较 hash算法 删除元素 lis value
dictdict是一个kv键值对,根据索引查找值。dict的key是根据hash算法计算
>>> d = {‘Michael‘: 95, ‘Bob‘: 75, ‘Tracy‘: 85}
>>> d[‘Michael‘]
95
>>> d[‘Jack‘] = 90
>>> d[‘Jack‘]
90
>>> d[‘Jack‘] = 88 #覆盖前面的值
>>> d[‘Jack‘]
88
>>> ‘Thomas‘ in d #判断key是否存在
False
>>> d.pop(‘Bob‘)
75
>>> d
{‘Michael‘: 95, ‘Tracy‘: 85}
和list比较,dict有以下几个特点:
查找和插入的速度极快,不会随着key的增加而变慢;
需要占用大量的内存,内存浪费多。
而list相反:
查找和插入的时间随着元素的增加而增加;
占用空间小,浪费内存很少。
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
>>> s = set([1, 2, 3])
>>> s
{1, 2, 3} #实际上是乱序,元素多的时候可以看到
>>> s = set([1, 1, 2, 2, 3, 3]) #过滤重复的元素
>>> s
{1, 2, 3}
>>> s.add(4) #增加元素
>>> s
{1, 2, 3, 4}
>>> s.add(4)
>>> s
{1, 2, 3, 4}
>>> s.remove(4) #删除元素
>>> s
{1, 2, 3}
标签:增加 索引查找 add 速度 比较 hash算法 删除元素 lis value
原文地址:https://blog.51cto.com/14157177/2428374