dict
Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。
>>> d = {'Michael':95,'Bob':75,'Tracy':85}
>>> d['Michael']
95
每一个key只能对应一种 value,所以对同一个key赋值,后面写入的 value 会将之前的覆盖。
key 不存在会报错。
两种方法避免:
1.in
>>>'Thomas' in d
2.dict 提供的 get 方法
## 在 Dict d 中找 Thomas,找到了返回 1,没找到返回 None(不显示)
>>>d.get('Thomas')
# 指定未找到的返回值为 -1
>>>d.get('Thomas',-1)
-1
删除 key 采用 pop(key) 的方法。对应 value 也会被删除。
类别 | list | dict |
---|---|---|
查找速度 | 随长度增加而增加 | 极快 |
空间占用 | 小 | 大 |
set
set 和 dict 类似,也是一组 key 的集合,但不存储 value。
要创建一个 set 需要提供一个 list 作为输入。
>>> s = set([1,2,3])
>>> s
{1,2,3}
如果 list 中有重复元素,则自动被过滤。
通过 add(key) 添加元素到 set 中。
通过 remove(key)删除元素。
set 可以被看作 数学意义 上的 无序和无重复元素的集合。
>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
# 取交集
>>> s1 & s2
{2, 3}
# 取并集
>>> s1 | s2
{1, 2, 3, 4}