python中字典的使用方法怎么样的
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中字典的使用方法怎么样的相关的知识,希望对你有一定的参考价值。
参考技术A dict全称dictionary,使用键-值(key-value)存储,具有极快的查找速度。举个例子,假设要根据同学的名字查找对应的成绩,如果用list实现,需要两个list:
names = ['Michael', 'Bob', 'Tracy']
scores = [95, 75, 85]
给定一个名字,要查找对应的成绩,就先要在names中找到对应的位置,再从scores取出对应的成绩,list越长,耗时越长。
如果用dict实现,只需要一个“名字”-“成绩”的对照表,直接根据名字查找成绩,无论这个表有多大,查找速度都不会变慢。用Python写一个dict如下:
>>> d = 'Michael': 95, 'Bob': 75, 'Tracy': 85
>>> d['Michael']
95
把数据放入dict的方法,除了初始化时指定外,还可以通过key放入:
>>> d['Adam'] = 67
>>> d['Adam']
67
由于一个key只能对应一个value,所以,多次对一个key放入value,后面的值会把前面的值冲掉:
>>> d['Jack'] = 90
>>> d['Jack']
90
>>> d['Jack'] = 88
>>> d['Jack']
88
如果key不存在,dict就会报错:
>>> d['Thomas']
Traceback (most recent call last):
File "", line 1, in KeyError: 'Thomas'
要避免key不存在的错误,有两种办法,一是通过in判断key是否存在:
>>> 'Thomas' in dFalse
二是通过dict提供的get()方法,如果key不存在,可以返回None,或者自己指定的value:
>>> d.get('Thomas')
>>> d.get('Thomas', -1)
-1
要删除一个key,用pop(key)方法,对应的value也会从dict中删除:
>>> d.pop('Bob')
75
>>> d
'Michael': 95, 'Tracy': 85
在python中怎么把列表中的元素添加到字典中
举例
>>>li=['a','b'.'c']
>>>d=
通过什么操作可以得到d='a','b','c'
1、首先打开python的编辑器。
2、然后在文件中写上程序的注释。
3、新建一个字典,名字就叫cellphone。
4、然后为cellphone的字典里添加一个元素,cellphone["oppo"]=189。
5、然后将这个添加了新的内容之后的字典打印出来。
6、在窗口中选择"run"->"run"。
7、运行这一个程序即可。
参考技术A 字典是一种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的值我们暂定为空
若还有问题请随时联系我!蟒蛇小组祝您编程愉快!追问
求QQ或者是Q群,对于编程我刚入门。现在在补C,C++,JAVE的功课同时在学python。希望你们蟒蛇小组能给我一些帮助。先谢谢了。
本回答被提问者和网友采纳 参考技术B >>> a=['one','two','three']>>> b=
>>> [b.setdefault(x,y) for x,y in enumerate(a)]
['one', 'two', 'three']
>>> b
0: 'one', 1: 'two', 2: 'three'
>>> 参考技术C d='a','b','c'这句本身是错的,字典不能这样写。
d=dict(zip(li, ['']*3))可以给出d='a':'', 'b':'', 'c':'' 参考技术D 首先你第一行就错了 ,有.而不是,;
li=['a', 'b', 'c']
d=li
这是最简单的,如果你硬要用
那就d='%s'%li
以上是关于python中字典的使用方法怎么样的的主要内容,如果未能解决你的问题,请参考以下文章