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

yipeiwu_com5年前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实现提取文章摘要的方法

本文实例讲述了Python实现提取文章摘要的方法。分享给大家供大家参考。具体如下: 一、概述 在博客系统的文章列表中,为了更有效地呈现文章内容,从而让读者更有针对性地选择阅读,通常会同时...

Python利用全连接神经网络求解MNIST问题详解

Python利用全连接神经网络求解MNIST问题详解

本文实例讲述了Python利用全连接神经网络求解MNIST问题。分享给大家供大家参考,具体如下: 1、单隐藏层神经网络 人类的神经元在树突接受刺激信息后,经过细胞体处理,判断如果达到阈值...

在Python中操作字符串之startswith()方法的使用

 startswith()方法检查字符串是否以str开始,任选限制匹配与给定索引的开始和结束。 语法 以下是startswith()方法的语法: str.startswit...

在Python中定义一个常量的方法

大家都知道,网络上流行这么一句话 如果一个程序,JAVA需要写1000行,那PHP要写500行,而Python只要写200行就可以拉~~ 那么在Python中,如何用代码去实现一个常量呢...

python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法

可能很多人遇到过这个错误,当使用setup.py安装python2.7图像处理模块PIL时,python默认会寻找电脑上以安装的vs2008.如果你没有安装vs2008,会出现Unabl...