Python中向字典中添加元素语法的参数有哪些呢?

Python中向字典中添加元素语法的参数有哪些呢?,第1张

方法可能有很多,但我先说一个最简单的吧:

要向字典添加元素,首先得有一个字典,假设做一个学生的数学成绩:

math_score = {}

然后就可以直接将key和对应的value按赋值的方式加上去:

math_score['张三'] = 90

这样就ok了

字典是一种hash表,即有key,和key键对应下的value

比如说我要初始化一个字典

phonebook={'Alice':'3241','Beth':'9274','Ceil':'3258'}

这样这本字典就有三对项,分别有键(key)和对应的值(value)组成

比如这里Alice,Beth,Ceil都是key

对应的value则分别为3241,9274,3258

key和value之间用冒号(:)隔开,项之间用逗号(,)隔开,整个字典由一对大括号括起来。

比如你要查询beth的电话号码,就可以用这条语句:

print phonebook['Beth']

结果则为9274

现在对字典的基本概念熟悉了吧?!

然后回答下你这个问题。

你要把列表中的元素添加到字典中,那么必须提供key值或value来和d中的{'a','b','c'}对应。

一楼就是其中一个解法,不过有些瑕疵,正确的应该是:

a=dict(zip(d, ['']*3))

a的值即为{'a':'', 'b':'', 'c':''}

此时列表中的元素a,b,c作为key,value的值我们暂定为空

添加键值对

首先定义一个空字典

>>>dic={}

直接对字典中不存在的key进行赋值来添加

>>>dic['name']='zhangsan'

>>>dic

{'name': 'zhangsan'}

如果key或value都是变量也可以用这种方法

>>>key='age'

>>>value=30

>>>dic[key]=value

>>>dic

{'age': 30. 'name': 'zhangsan'}

这里可以看到字典中的数据并不是按先后顺序排列的,如果有兴趣,可以搜一搜数据结构中的——哈希表

从python3.7开始,字典按照插入顺序,实现了有序。修改一个已存在的key的值,不影响顺序,如果删了一个key后再添加该key,该key会被添加至末尾。标准json库的dump(s)/load(s)也是有序的

还可以用字典的setdefault方法

>>>dic.setdefault('sex','male')

'male'

>>>key='id'

>>>value='001'

>>>dic.setdefault(key,value)

'001'

>>>dic

{'id': '001', 'age': 30. 'name': 'zhangsan', 'sex': 'male'}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11787368.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存