Python基础入门—字典(dict)

概述:python中的dict具有如下特点

dict是可变的

dict可以存储任意数量的Python对象

dict可以存储任何python数据类型

dict以: key:value, 即“键: 值”对的形式存储数据, 每个键是唯一的。

dict也被称为关联数组或哈希表

创建dict

方法一:dictname = { }

>>> mydict = { }

>>> mydict

>>> { }

从空字典中加入键值对:

>>> mydict[1] = "value1"

>>> mydict[2] = "value2"

>>> mydict[3] = "value3"

>>> mydict["name4"] = "value4"

>>> mydict["name5"] = "value5"

>>> mydict["name6"] = "value6"

>>> mydict

{1: 'value1', 2: 'value2', 3: 'value3', 'name4': 'value4', 'name5': 'value5', 'name6': 'value6'}

>>>

方法二:dict = {key1:value1,key2:value2,...}

>>> mydict2 = {"name1":"value1","name2":"value2","name3":"value3","name4":"value4"}

>>> mydict2

{'name1': 'value1', 'name2': 'value2', 'name3': 'value3', 'name4': 'value4'}

"name":"value"就是一个键值对, 前面的name叫做键( key) , 后面的value是前面的键所对应的值(value)。 在一个dict中, 键是唯一的, 不能重复; 值则是对应于键, 值可以重复。 键值之间用(:)英文的分号, 每一对键值之间用英文的逗号(,)隔开。

方法三:dict(name) =  (["key1","name1"],["key2","value2"])  

>>> name = (["first","google"],["second","yahoo"])   (另一种数据类型,元组)

>>> website = dict(name)

>>> website

{'first': 'google', 'second': 'yahoo'}

>>>

访问dict值:dict[k]

>>> mydict

{1: 'value1', 2: 'value2', 3: 'value3', 'name4': 'value4', 'name5': 'value5', 'name6': 'value6'}

>>> mydict[1]

'value1'

>>> mydict[2]

'value2'

>>> mydict["name2"]

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

KeyError: 'name2'

>>> mydict["name4"]

'value4'

>>> for key in mydict:

...    print (mydict[key])

...

value1

value2

value3

value4

value5

value6

>>>

获取键、值:dict.keys()  dict.values()  dict.items()

>>> mydict.keys()

dict_keys([1, 2, 3, 'name4', 'name5', 'name6'])

>>> mydict.values()

dict_values(['value1', 'value2', 'value3', 'value4', 'value5', 'value6'])

>>> mydict.items()

dict_items([(1, 'value1'), (2, 'value2'), (3, 'value3'), ('name4', 'value4'), ('name5', 'value5'), ('name6', 'value6')])

>>> for value in mydict.values():

...    print (value)

...

value1

value2

value3

value4

value5

value6

>>>

删除键值对:dict.pop(key) 或者 del dict[key]

>>> mydict

{1: 'value1', 2: 'value2', 3: 'value3', 'name4': 'value4', 'name5': 'value5', 'name6': 'value6'}

>>> mydict.pop(2)             #有返回值

'value2'

>>> mydict

{1: 'value1', 3: 'value3', 'name4': 'value4', 'name5': 'value5', 'name6': 'value6'}

>>> del mydict[1]             #无返回值

>>> mydict

{3: 'value3', 'name4': 'value4', 'name5': 'value5', 'name6': 'value6'}

>>>

键值对合并:dict1.update(dict2)

>>> mydict2

{'name1': 'value1', 'name2': 'value2', 'name3': 'value3', 'name4': 'value4'}

>>> mydict2.update(mydict)

>>> mydict2

{'name1': 'value1', 'name2': 'value2', 'name3': 'value3', 'name4': 'value4', 3: 'value3', 'name5': 'value5', 'name6': 'value6'}

>>>

发布了33 篇原创文章 · 获赞 12 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/niyaozuozuihao/article/details/89287265