Python编程语言中有许多比较简单的功能应用,在实际编程中却体现了非常强大的功能。比如Python字典的应用就是其中一个比较重要的应用
Python字典应用方式
1)get(key,default=None)
返回键值key对应的值;如果key没有在字典里,则返回default参数的值,默认为None
dict1={} dict1.get('a') # key 'a' i not in dict, return None dict1['a']='no1' dict1.get('a')# return value 'no1'
2)clear
clear the whole dict.
清空字典
3)has_key(key)
如果key出现在dict里则返回True;否则返回False
>>> dict1 {'a': '1111'} >>> dict1.has_key('b') False >>> dict1.has_key('a') True
4)items
这一种Python字典应用方式, 主要功能是返回dict的(键,值)tuple对的一个列表
dict1={'a': 'no1', 'b': '2222'} >>>dict1.items() [('a', 'no1'), ('b', '2222')]
5)keys 返回dict的键列表
6)values 返回dict的值列表
7)setdefault(key,default=None)
如果dict中有key,则返回key值,如果没有找到key,则在dict中加上该key,值(value)由default参数给出,默认None
8)update(dict2)
把dict2的元素加入到dict中去,键字重复时会覆盖dict中的键值
dict2={'c': '3333', 'b': 'no2'} dict1={'a': 'no1', 'b': '2222'} dict1.update(dict2) >>> dict1 {'a': 'no1', 'c': '3333', 'b': 'no2'} # over ride repeated key and value pair.
9)popitem
这一Python字典应用方式删除任意键-值对,并返回该键-值对,如字典为空,则产生异常
dict1={'b': 'no2'} >>> dict1.popitem() ('b', 'no2') >>> dict1.popitem() Traceback (most recent call last): File "< interactive input>", line 1, in < module> KeyError: 'popitem(): dictionary is empty'
10)pop(key,[d])
删除指定键字的键-值对,并返回该键对应的值。 第二个参数是default 返回值 当key 不在dict 内。
11)copy
返回字典的一个浅拷贝
12)deepcopy
返回字典的一个深拷贝, 当dict 中有表或类的对象时(compound objects (objects that contain other objects, like lists or class instances)
字典的遍历
dict = {"a" : "apple", "b" : "banana", "g" : "grape", "o" : "orange"}
for k in dict:
print "dict[%s] =" % k,dict[k]
#字典items()的使用
dict = {"a" : "apple", "b" : "banana", "c" : "grape", "d" : "orange"}
#每个元素是一个key和value组成的元组,以列表的方式输出
print dict.items()
#调用items()实现字典的遍历
dict = {"a" : "apple", "b" : "banana", "g" : "grape", "o" : "orange"}
for (k, v) in dict.items():
print "dict[%s] =" % k, v
#调用iteritems()实现字典的遍历
dict = {"a" : "apple", "b" : "banana", "c" : "grape", "d" : "orange"}
print dict.iteritems()
for k, v in dict.iteritems():
print "dict[%s] =" % k, v
for (k, v) in zip(dict.iterkeys(), dict.itervalues()):
print "dict[%s] =" % k, v