[转载] python里字典的用法_python中字典(Dictionary)用法实例详解

参考链接: Python字典dictionary copy方法

本文实例讲述了python中字典(Dictionary)用法。分享给大家供大家参考。具体分析如下:

 字典(Dictionary)是一种映射结构的数据类型,由无序的“键-值对”组成。字典的键必须是不可改变的类型,如:字符串,数字,tuple;值可以为任何python数据类型。

 1、新建字典

 >>> dict1={} #建立一个空字典

 >>> type(dict1)

 2、增加字典元素:两种方法

 >>> dict1['a']=1 #第一种

 >>> dict1

 {'a': 1}

 #第二种:setdefault方法

 >>> dict1.setdefault('b',2)

 2

 >>> dict1

 {'a': 1, 'b': 2}

 3、删除字典

 #删除指定键-值对

 >>> dict1

 {'a': 1, 'b': 2}

 >>> del dict1['a'] #也可以用pop方法,dict1.pop('a')

 >>> dict1

 {'b': 2}

 #清空字典

 >>> dict1.clear()

 >>> dict1 #字典变为空了

 {}

 #删除字典对象

 >>> del dict1

 >>> dict1

 Traceback (most recent call last):

 File "", line 1, in NameError: name 'dict1' is not defined

 4、字典的方法

 1)get(key,default=None)

 返回键值key对应的值;如果key没有在字典里,则返回default参数的值,默认为None

 >>> dict1 #空的字典

 {}

 >>> dict1.get('a') #键‘a'在dict1中不存在,返回none

 >>> dict1.get('d1','no1') #default参数给出值'no1',所以返回'no1'

 'no1'

 >>> dict1['a']='no1' #插入一个新元素

 >>> dict1

 {'a': '1111'}

 >>> dict1.get('a') #现在键'a'存在,返回其值

 '1111'

 2)clear 清空字典

 3)has_key(key) 如果key出现在dict里则返回True;否则返回False

 >>> dict1

 {'a': '1111'}

 >>> dict1.has_key('b')

 False

 >>> dict1.has_key('a')

 True

 4)items 返回dict的(键,值)tuple对的一个列表

 >>> dict1

 {'a': 'no1', 'b': '2222'}

 >>> dict1.items()

 [('a', 'no1'), ('b', '2222')]

 5)keys 返回dict的键列表

 6)values 返回dict的值列表

 >>> dict1

 {'a': 'no1', 'b': '2222'}

 >>> dict1.keys()

 ['a', 'b']

 >>> dict1.values()

 ['no1', '2222']

 7)setdefault(key,default=None)

 如果dict中有key,则返回key值,如果没有找到key,则在dict中加上该key,值由default参数给出,默认None

 8)update(dict2)

 把dict2的元素加入到dict中去,键字重复时会覆盖dict中的键值

 >>> dict2

 {'c': '3333', 'b': 'no2'}

 >>> dict1 #dict2和dict1的键‘b'重复

 {'a': 'no1', 'b': '2222'}

 >>> dict1.update(dict2) #调用update后,dict1的键'b'值被覆盖了

 >>> dict1

 {'a': 'no1', 'c': '3333', 'b': 'no2'}

 9)popitem 删除任意键-值对,并返回该键-值对,如字典为空,则产生异常

 >>> dict1

 {'b': 'no2'}

 >>> dict1.popitem()

 ('b', 'no2')

 >>> dict1

 {}

 >>> dict1.popitem()

 Traceback (most recent call last):

 File "", line 1, in KeyError: 'popitem(): dictionary is empty'

 10)pop(key,[d]) 删除指定键字的键-值对,并返回该键对应的值

 >>> dict1

 {'a': 'no1', 'c': '3333', 'b': 'no2'}

 >>> dict1.pop('a')

 'no1'

 >>> dict1

 {'c': '3333', 'b': 'no2'}

 11)copy 返回字典的一个浅拷贝

 希望本文所述对大家的Python程序设计有所帮助。

 

 本文原创发布php中文网,转载请注明出处,感谢您的尊重!

上一篇:Python字典数据类型及基本操作


下一篇:Python题库(100例)第一天