#字典dict常见操作
>>> dir(dict)
['__class__', '__cmp__', '__contains__', '__delattr__', '__delitem__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values', 'viewitems', 'viewkeys', 'viewvalues']
- clear()用于清空(或删除)字典中的所有数据项。
>>> test={'wang':1,'www':'ad'}
>>> test
{'www': 'ad', 'wang': 1}
>>> test.clear()
>>> test
{}
- copy()返回一个字典的浅复制。
>>> test1={'www':22,'aaa':33}
>>> test2=test1.copy()
>>> test2
{'www': 22, 'aaa': 33}
- fromkeys()用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。
>>> seq=('wang','hao')
>>> test=test.fromkeys(seq)
>>> test
{'wang': None, 'hao': None}
>>> test=test.fromkeys(seq,10)
>>> test
{'wang': 10, 'hao': 10}
- get()函数返回指定键的值,如果值不在字典中返回默认值。
>>> test.get('wang')
10
- has_key()用于判断键是否存在于字典中,如果键在字典dict里返回true,否则返回false。
>>> test.has_key('wang')
True
- pop() 方法删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
>>> test.pop('wang')
10
>>> test
{'hao': 10}
- setdefault() 函数和get()方法类似, 如果键不存在于字典中,将会添加键并将值设为默认值。
>>> test.setdefault('hao')
10
>>> test.setdefault('biabia')
>>> test
{'biabia': None, 'hao': 10}
>>> test.setdefault('qqqq',233)
233
>>> test
{'qqqq': 233, 'biabia': None, 'hao': 10}
- items() 返回一个字典的拷贝列表
>>> print test.items()
[('qqqq', 233), ('biabia', 520), ('hao', 10)]
- iteritems()是generator, yield 2-tuple,返回的是一个生成器(迭代器)。
>>> a=test.iteritems()
>>> for i in a:
print i
('qqqq', 233)
('biabia', 520)
('hao', 10)
- iterkeys()返回一个只有键的迭代器
>>> a=test.iterkeys()
>>> for i in a:
print i
qqqq
biabia
hao
- itervalues()返回一个只有值的迭代器
>>> a=test.itervalues()
>>> for i in a:
print i
233
520
10
- update()更新字典,即将原有字典与其他字典内容合并
>>> test.update({'oo':23,})
>>> test
{'qqqq': 233, 'oo': 23, 'biabia': 520, 'hao': 10}