1. 创建字典
>>>aDict = {}.fromkeys(('Wangdachui','Niuyun','Linling','Tianqi'),3000)
>>>aDict
{'Wangdachui': 3000, 'Niuyun': 3000, 'Linling': 3000, 'Tianqi': 3000}
>>> sorted(aDict)
['Linling', 'Niuyun', 'Tianqi', 'Wangdachui']
#sorted(Dict)会得到键排序后的列表
Python 字典(Dictionary) fromkeys()方法
2. 字典的基本操作
(1).键值查找
>>> aInfo = {'Wangdachui':3000,'Niuyun':2000,'Linling':4500,'Tianqi':8000}
>>> aInfo ['Niuyun']
2000
(2).字典更新
>>> aInfo['Niuyun'] = 9999
>>> aInfo
{'Wangdachui': 3000, 'Niuyun': 9999, 'Linling': 4500, 'Tianqi': 8000}
(3).字典添加
>>> aInfo['Fuyun'] = 1000
>>> aInfo
{'Wangdachui': 3000, 'Niuyun': 9999, 'Linling': 4500, 'Tianqi': 8000, 'Fuyun': 1000}
(4).字典的成员判断
>>> 'Mayun' in aInfo
False
(4).删除字典成员
>>> del aInfo['Fuyun']
>>> aInfo
{'Wangdachui': 3000, 'Niuyun': 9999, 'Linling': 4500, 'Tianqi': 8000}
3.字典的内建函数
Python字典包含了以下内置函数
序号 | 函数及描述 |
---|---|
1 | cmp(dict1, dict2) 比较两个字典元素. |
2 | len(dict)计算字典元素个数,即键的总数. |
3 | str(dict)输出字典可打印的字符串表示. |
4 | type(variable)返回输入的变量类型,如果变量是字典就返回字典类型. |
5 | cmp(dict1, dict2) 比较两个字典元素. |
6 | dict() 函数用于创建一个字典. |
Python字典包含了以下内置方法:
序号 | 函数及描述 |
---|---|
1 | dict.clear()删除字典内所有元素 |
2 | dict.copy()返回一个字典的浅复制 |
3 | dict.fromkeys(seq[, val])创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值 |
4 | dict.get(key, default=None)返回指定键的值,如果值不在字典中返回default值 |
5 | dict.has_key(key)如果键在字典dict里返回true,否则返回false |
6 | dict.items()以列表返回可遍历的(键, 值) 元组数组 |
7 | dict.keys()以列表返回一个字典所有的键 |
8 | dict.setdefault(key, default=None)和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default |
9 | dict.update(dict2)把字典dict2的键/值对更新到dict里 |
10 | dict.values()以列表返回字典中的所有值 |
11 | pop(key[,default])删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值 |
12 | popitem()随机返回并删除字典中的一对键和值 |
>>> aInfo
{'Wangdachui': 3000, 'Niuyun': 9999, 'Linling': 4500, 'Tianqi': 8000}
>>> aInfo.keys()#Dict的字典keys()
dict_keys(['Wangdachui', 'Niuyun', 'Linling', 'Tianqi'])
>>> aInfo.values()#Dict的字典values()
dict_values([3000, 9999, 4500, 8000])
>>> for k,v in aInfo.items(): #Dict items()方法
... print(k,v)
...
Wangdachui 3000
Niuyun 9999
Linling 4500
Tianqi 8000
>>> aInfo
{'Wangdachui': 3000, 'Niuyun': 9999, 'Linling': 4500, 'Tianqi': 8000}
>>> bInfo={'Tom':3000,'Mary':4000}
>>> aInfo
{'Wangdachui': 3000, 'Niuyun': 9999, 'Linling': 4500, 'Tianqi': 8000}
>>> bInfo
{'Tom': 3000, 'Mary': 4000}
>>> aInfo.update(bInfo)#dict.update(dict2)把字典dict2的键/值对更新到dict里
>>> aInfo
{'Wangdachui': 3000, 'Niuyun': 9999, 'Linling': 4500, 'Tianqi': 8000, 'Tom': 3000, 'Mary': 4000}
以下的两种键值查找方法,推荐使用第二种
>>> stock = {'AXP':78.51,'BA':184.76}
>>> stock['AAA']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'AAA'
>>> stock
{'AXP': 78.51, 'BA': 184.76}
>>> print(stock.get('AAA'))
None
Python的字典的删除方法
>>> aStock={'AXP':78.51,'BA':184.76}
>>> bStock=aStock
>>> aStock = {}
>>> bStock
{'AXP': 78.51, 'BA': 184.76}
>>> aStock = {'AXP':78.51,'BA':184.76}
>>> bStock = aStock
>>> aStock.clear()
>>> aStock
{}
>>> bStock
{}