上一篇讲了list。这一篇接着讲dictionary,包括set。
1.dictionay概览:
上表列出了python的大部分操作。dictionary和list一样也可以嵌套使用。
2.dictionary例子:
>>> d = {'jiji':1, 'waiwai':2} #创建
>>> d['jiji']
1
>>> d['waiwai'] #取值
2
>>> d
{'jiji': 1, 'waiwai': 2}
>>> len(d) #长度
2
>>> 'waiwai' in d
True
>>> list(d.keys()) #取得key值
['jiji', 'waiwai']
>>> list(d.values()) #取得value值
[1, 2]
>>> d['waiwai'] = [2, 3, 4] #值为list
>>> d
{'jiji': 1, 'waiwai': [2, 3, 4]}
>>> del d['waiwai'] #删除指定key的那一项
>>> d
{'jiji': 1}
>>> d['fujiji'] = [1, 2]
>>> d
{'jiji': 1, 'fujiji': [1, 2]}
>>> list(d.items()) #全部项转换为list
[('jiji', 1), ('fujiji', [1, 2])]
>>> d.get('jiji')
1
>>> d.get('jijiwaiwai', 88) #没有key值,则返回后者
88
>>> d2 = {'waiwai':10}
>>> d.update(d2) #将d2值拿来
>>> d
{'jiji': 1, 'waiwai': 10, 'fujiji': [1, 2]}
>>> d.pop('waiwai')
10
>>> d
{'jiji': 1, 'fujiji': [1, 2]}
>>> d['new'] = 5
>>> d
{'jiji': 1, 'new': 5, 'fujiji': [1, 2]}
3.dictionary注意事项
3.1它不适合序列操作。它只存映射关系。
3.2key只能是同一种类型,可以不是string. value可以是任何类型。
4.dictionary另一个创建方法
可以通过zip函数,创建键值分离的dictionary。这在动态创建dictionary中非常有用。
>>> list(zip(['a', 'b'],[1, 2]))
[('a', 1), ('b', 2)]
>>> dict(zip(['a', 'b'], [1, 2]))
{'a': 1, 'b': 2}
end.