Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。如下所示:
>>> dic={"first":"v1","second":2,"third":3}
>>> dic["first"]
'v1'
>>> dic["second"]
2
二. 添加键-值对
字典是一个动态结构,可随时在其中添加键-值对。要添加键-值对,可依次指定字典名、用方括号括起的键和相关联的值。如下所示:
alien_0={'color':'green','points':5}
#新增键-值对:'x_pos':0,'y_pos':25
alien_0['x_pos']=0
alien_0['y_pos']=25
三. 修改字典中的值
修改字典中的值,可依次指定字典名、用方括号括起的键以及与该键相关联的新值。如下所示:
alien_0={'color':'green','points':5}
#修改键color的值为yellow
alien_0['color']='yellow'
四.判断某个key是否存在,使用“in”关键字或通过get()方法来判断。
>>> dic={"first":"v1","second":2,"third":3}
>>> "four" in dic
False
>>> "first" in dic
True
>>> dic.get("first")
'v1'
>>> dic.get("four")
五.删除key使用pop()方法,会将值一起删除。备注:使用pop删除dict时必须要传入参数,而删除list时可不带参数
>>> dic={"first":"v1","second":2,"third":3}
>>> dic.pop("second")
2
>>> dic
{'first': 'v1', 'third': 3}
set
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。set会自动过滤掉重复元素
>>> dic #显示dic的key-value
{'first': 'v1', 'third': 3}
>>> sss=set([4,5,6,7,8]) #使用list作为输入集合
>>> sss
{4, 5, 6, 7, 8}
>>> sss.add(9)
>>> sss
{4, 5, 6, 7, 8, 9}
>>> sss.remove(4) #删除元素4
>>> sss
{5, 6, 7, 8, 9}
>>> sss.add(4)
>>> sss
{4, 5, 6, 7, 8, 9}
>>> sss.add(4) #重复添加元素4
>>> sss
{4, 5, 6, 7, 8, 9}
>>> s1 = set(dic) #使用字典dic作为输入集合
>>> s1
{'first', 'third'}
set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作:
>>> s1=set([1,2,3])
>>> s2=set([2,3,4])
>>> s1 & s2 #取交集
{2, 3}
>>> s1 | s2 #取并集
{1, 2, 3, 4}