python中的字典有什么用

这篇文章主要介绍python中的字典有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

创新互联公司长期为上千多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为桃城企业提供专业的成都网站设计、成都网站建设桃城网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。

dict Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值**(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

注意字典中的KEY是不重复可哈希

如果定义时KEY重复,默认后面覆盖前面

i = {"苹果":50,"葡萄":30,"苹果":40}
print(i)

#输出
{'苹果': 40, '葡萄': 30}

向字典里面增加元素

方法:dict['new_key']=new_value

a={'Michael': 95, 'Bob': 75, 'Tracy': 85}
a['lee']=100
print(a)
#输出 {'Michael': 95, 'Bob': 75, ''lee':100,Tracy': 85}

注意字典里面内容是无序的,所以生成a['lee']的位置是随机的

对字典里面元素进行修改

方法:直接修改value 的值即可修改,多次对一个key放入value,后面的值会把前面的值冲掉:

d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
d['bob']=100
print(d)
#输出{'Michael': 95, 'Bob': 100, 'Tracy': 85}

如果key不存在,Dict就会报错

>>> d['Thomas']
Traceback (most recent call last):
  File "", line 1, in 
KeyError: 'Thomas'

遍历dict中的 kye,value

方法1:

a={"name":"lee","job":"it","sex":"man"}
for i in a: 
    print( i,a[i])                 #效率高
#输出  job      it
 #name  lee
 #sex man

方法2:

for i,n in a.items():       #效率低
    print(i,n)
#输出内容和方法1相同,但方法1效率更高,因为a.items() 先要转换成字典列表对象
print(a.items())
#输出内容为 [('name','lee'),('job','it'),('sex','man')]

dict字典的一些方法: 可以用Python3.5 自带命令查找方法列表和方法的用法

a={'name',"lee"}
dir(a)

得到结果

python中的字典有什么用

#用法 ,注意后面不用加()
help(a.get)

得到结果

help

字典生成式

配合 内置函数zip()使用

zip():将用于可迭代的对象当成作为参数,将对象中的元素打包成一个元组,然后返回由这些元组组成的列表

方法1:循环法

{ i:j for i,j in zip(keys,values)}

items = ['苹果',"梨子","香蕉"]
prices = [5,3,4]

print(zip(items,prices))
print(type(zip(items,prices)))


#下面的 item price 是自定义变量,可随意替换 如i,j
dict1 = {item:price for item,price in zip(items,prices)}
print(dict1)

#输出
{'苹果': 5, '梨子': 3, '香蕉': 4}

方法2:dict(zip(keys,values))

用dict 方法转换 ,代码少

items = ['苹果',"梨子","香蕉"]
prices = [5,3,4]
dict2 = dict(zip(items,prices))
print(dict2)
#输出
{'苹果': 5, '梨子': 3, '香蕉': 4}

以上是“python中的字典有什么用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


文章名称:python中的字典有什么用
标题来源:http://hbruida.cn/article/gjdigc.html