python中的字典操作及字典函数

yipeiwu_com6年前Python基础

字典

dict_fruit = {'apple':'苹果','banana':'香蕉','cherry':'樱桃','avocado':'牛油果','watermelon':'西瓜'} 

字典的操作

#字典的遍历方式 
#默认遍历(遍历key) 
for value in dict_fruit: 
  print(value) 
''''' 
遍历出的值: 
watermelon 
apple 
cherry 
avocado 
banana 
''' 
#使用key遍历(与默认遍历一样) 
for key in dict_fruit.keys(): 
  print(key) 
''''' 
遍历出的值: 
watermelon 
apple 
cherry 
avocado 
banana 
''' 
#使用value遍历 
for value in dict_fruit.values(): 
  print(value) 
''''' 
遍历出的值: 
苹果 
牛油果 
香蕉 
西瓜 
樱桃 
''' 
#使用key,value遍历 
for key,value in dict_fruit.items(): 
  print(key+'--->'+value) 
''''' 
遍历出的值: 
avocado--->牛油果 
apple--->苹果 
banana--->香蕉 
cherry--->樱桃 
watermelon--->西瓜 
''' 
#创建字典 
#使用dict() 
res = dict(brand = '品牌',size='尺码',color='颜色') 
print(res,type(res)) 
''''' 
res结果: 
{'size': '尺码', 'brand': '品牌', 'color': '颜色'} <class 'dict'> 
''' 
#使用zip()和dict() 
keys = ['1','2','3','4','5'] 
values = [1,2,3,4,5] 
res = dict(zip(keys,values)) 
print(res,type(res)) 
''''' 
res结果: 
{'3': 3, '4': 4, '1': 1, '2': 2, '5': 5} <class 'dict'> 
''' 
#字典的推导式 
res = {k+'的中文是'+v for k,v in dict_fruit.items()} 
print(res) 
''''' 
res结果: 
{'watermelon的中文是西瓜', 'avocado的中文是牛油果', 'banana的中文是香蕉', 'cherry的中文是樱桃', 'apple的中文是苹果'} 
''' 

字典的函数

#清空字典 
test1 = {1:'1'} 
test1.clear() 
print(test1) 
''''' 
test1结果: 
{} 
''' 
#复制字典(复制成一个新字典) 
test2 = {2:'2'} 
test2_copy = test2.copy() 
print(test2_copy) 
''''' 
test2结果: 
{2: '2'} 
''' 
#使用指定的key和value制作一个字典 
list_test = ['a','b','c'] 
test3 = {}.fromkeys(list_test,'ojbk') 
print(test3) 
''''' 
test3结果: 
{'a': 'ojbk', 'b': 'ojbk', 'c': 'ojbk'} 
''' 
#将一个字典转化为二级容器(中间容器) 
res = dict_fruit.items() 
print(res,type(res)) 
''''' 
res结果: 
dict_items([('avocado', '牛油果'), ('apple', '苹果'), ('banana', '香蕉'), ('watermelon', '西瓜'), ('cherry', '樱桃')]) <class 'dict_items'> 
''' 
#将字典的key组成新的容器 
res = dict_fruit.keys() 
print(res,type(res)) 
''''' 
res结果: 
dict_keys(['watermelon', 'cherry', 'avocado', 'apple', 'banana']) <class 'dict_keys'> 
''' 
#将字典的value组成新的容器 
res = dict_fruit.values() 
print(res,type(res)) 
''''' 
res结果: 
dict_values(['牛油果', '香蕉', '樱桃', '苹果', '西瓜']) <class 'dict_values'> 
''' 
#根据key删除字典中的数据 
test4 = {1:'1',2:'2',3:'3'} 
test4.pop(2) 
print(test4) 
''''' 
test4结果: 
{1: '1', 3: '3'} 
''' 
#依次弹出(删除)字典中的数据 
test5 = {1:'1',2:'2',3:'3',4:'4',5:'5'} 
test5.popitem() 
print(test5) 
test5.popitem() 
print(test5) 
test5.popitem() 
print(test5) 
''''' 
test5依次结果: 
{2: '2', 3: '3', 4: '4', 5: '5'} 
{3: '3', 4: '4', 5: '5'} 
{4: '4', 5: '5'} 
''' 
#更新dict中的数据(更新一个不存在的key时,可用于添加新数据) 
test6 = {'super':'Eric','ssuper':'Cbabe','sssuper':'Gogo','supreme':'wiz333'} 
#更新数据 
test6.update(super='Eric-LPL') 
print(test6) 
#添加数据 
test6.update(niceboy='Bigmao') 
print(test6) 
''''' 
test6依次结果: 
{'ssuper': 'Cbabe', 'supreme': 'wiz333', 'sssuper': 'Gogo', 'super': 'Eric-LPL'} 
{'ssuper': 'Cbabe', 'supreme': 'wiz333', 'niceboy': 'Bigmao', 'sssuper': 'Gogo', 'super': 'Eric-LPL'} 
''' 
#获取dict中的数据(使用key获取) 
test7 = {1:'1',2:'2',3:'3',4:'4',5:'5'} 
res = test7.get(1) 
print(res,type(res)) 
''''' 
test7结果: 
1 <class 'str'> 
''' 
#给dict添加数据(setdefault,不能用于更新数据) 
test8 = {1:'1',2:'2',3:'3',4:'4',5:'5'} 
test8.setdefault(6,'6') 
print(test8) 
''''' 
test8结果: 
{1: '1', 2: '2', 3: '3', 4: '4', 5: '5', 6: '6'} 
''' 

总结

以上所述是小编给大家介绍的python中的字典操作及字典函数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

python多进程并发demo实例解析

这篇文章主要介绍了python多进程并发demo实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 前言 下午需要简单处理一份数据...

Python中的super用法详解

一、问题的发现与提出 在Python类的方法(method)中,要调用父类的某个方法,在Python 2.2以前,通常的写法如代码段1: 代码段1: 复制代码 代码如下:  c...

Python 连连看连接算法

功能:为连连看游戏提供连接算法 说明:模块中包含一个Point类,该类是游戏的基本单元“点”,该类包含属性:x,y,value。 其中x,y代表了该点的坐标,value代表该点的特征:0...

Python 装饰器深入理解

讲 Python 装饰器前,我想先举个例子,虽有点污,但跟装饰器这个话题很贴切。 每个人都有的内裤主要功能是用来遮羞,但是到了冬天它没法为我们防风御寒,咋办?我们想到的一个办法就是把内裤...

python fabric使用笔记

fabric title是开发,但是同时要干开发测试还有运维的活……为毛 task*3 不是 salary * 3 (o(╯□╰)o) 近期接手越来越多的东西,发布和运维的工作相当机械,...