本文实例讲述了Python常见字典内建函数用法。分享给大家供大家参考,具体如下:
1、len(mapping)
返回映射的长度(键-值对的个数)
2、hash(obj)
返回obj的哈希值
1
2
3
4
5
|
>>> myDict = { 'name' : 'earth' , 'port' : '80' }
>>> len (myDict)
2
>>> hash ( 'name' )
15034981
|
3、dict.copy()
返回字典(浅复制)的一个副本
1
2
3
4
5
6
7
|
>>> myDict = { 'name' : 'earth' , 'port' : '80' }
>>> yourDict = myDict.copy()
>>> yourDict
{ 'name' : 'earth' , 'port' : '80' }
>>> id (myDict) 41816664L
>>> id (yourDict)
41819544L
|
4、dict.clear()
删除字典中所有元素
1
2
3
|
>>> myDict.clear()
>>> myDict
{}
|
5、dict.fromkeys(seq, val=None)
创建并返回一个新字典,以 seq 中的元素做该字典的键,val 做该字典中所有键对应的初始值(如果不提供此值,则默认为 None)。
1
2
3
|
>>> seq = [ 'name' , 'port' ]
>>> myDict.fromkeys(seq)
{ 'name' : None , 'port' : None }
|
6、dict.get(key)
对字典 dict 中的键 key,返回它对应的值 value,如果字典中不存在此键,则返回 default 的值(注意,参数 default 的默认值为 None)。
1
2
3
4
5
|
>>> myDict = { 'name' : 'earth' , 'port' : '80' }
>>> myDict.get( 'name' )
'earth'
>>> print myDict.get( 'home' )
None
|
7、dict.items()
返回一个包含字典中(键, 值)对元组的列表
1
2
|
>>> myDict.items()
[( 'name' , 'earth' ), ( 'port' , '80' )]
|
8、dict.keys()
返回一个包含字典中键的列表
9、dict.values()
返回一个包含字典中所有值的列表
1
2
3
4
|
>>> myDict.keys()
[ 'name' , 'port' ]
>>> myDict.values()
[ 'earth' , '80' ]
|
10、dict.iter()
方法 iteritems(),
iterkeys()
, itervalues()
与它们对应的非迭代方法一样,不同的是它们返回一个迭代子,而不是一个列表。
11、dict.pop(key[, default])
和方法 get()相似,如果字典中 key 键存在,删除并返回 dict[key],如果 key 键不存在,且没有给出 default 的值,引发 KeyError 异常。
1
2
3
4
5
6
|
>>> myDict.pop( 'port' )
'80'
>>> myDict
{ 'name' : 'earth' }
>>> myDict.pop( 'port' , 'No such key!' )
'No such key!'
|
12、dict.setdefault(key, default=None)
和方法 set()
相似,如果字典中不存在 key 键,由 dict[key]=default
为它赋值。
1
2
3
4
|
>>> myDict.setdefault( 'port' , '8080' )
'8080'
>>> myDict
{ 'name' : 'earth' , 'port' : '8080' }
|
13、dict.update(dict2)
将字典 dict2 的键-值对添加到字典 dict。
1
2
3
4
5
6
|
>>> yourDict = { 'language' : 'Python' }
>>> yourDict
{ 'language' : 'Python' }
>>> myDict.update(yourDict)
>>> myDict
{ 'name' : 'earth' , 'language' : 'Python' , 'port' : '8080' }
|
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/xc_tsao/article/details/25494791