Python基础数据类型-字典(dict)
Python基础数据类型-字典(dict)
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版本的哟,请知晓。
一.字典的基本使用
1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 #@author :yinzhengjie 4 #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/ 5 #EMAIL:y1053419035@qq.com 6 7 8 UserInformation = { 9 "name":"yinzhengjie", 10 "heigh":"175cm", 11 "habby":"Skating" 12 } 13 14 print(UserInformation.values()) #打印该字典的所有的value的值 15 print(UserInformation.keys()) #打印该字典的所有的keys值 16 print(UserInformation) #打印整个字典的信息 17 print("address" in UserInformation) #查找key名称是name所对应的value,如果有就返回其所对应的value,如果没有的话就不输出 18 UserInformation["name"] = "尹正杰" #修改一个字典中的一个key所对应的value值 19 print(UserInformation) 20 UserInformation["age"] = "18" #如果该字典没有对应的key,就是新增了一个key信息 21 del UserInformation["name"] #删除该字典中的name这个key 22 UserInformation.pop("heigh") #删除该字典中的heigh 23 UserInformation.popitem() #随机删除该字典的一个Key信息 24 print(UserInformation) 25 26 27 28 29 #以上代码执行结果如下: 30 dict_values(['yinzhengjie', '175cm', 'Skating']) 31 dict_keys(['name', 'heigh', 'habby']) 32 {'name': 'yinzhengjie', 'heigh': '175cm', 'habby': 'Skating'} 33 False 34 {'name': '尹正杰', 'heigh': '175cm', 'habby': 'Skating'} 35 {'habby': 'Skating'}
二.字典的进阶玩法
1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 #@author :yinzhengjie 4 #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/ 5 #EMAIL:y1053419035@qq.com 6 7 8 UserInformation = { 9 "name":"yinzhengjie", 10 "heigh":"175cm", 11 "habby":"Skating" 12 } 13 14 AnotherUserInformation = { 15 "name":"jujingyi", 16 "RepresentativeWork":"热血长安", 17 "Occupation":"Singer", 18 "habby":"Go to karaoke" 19 } 20 list_1 = [1,2,2,3,3,4,4] 21 list_2 = [444,{"name":"yinzhengjie"},555] 22 print(UserInformation.setdefault("habby","GloryOfKings")) #该方法可以去取该字典是否存name这个值,如果存在就会返回后面定义的值,如果不存在就回新建一个key值对 23 print(UserInformation) 24 print(UserInformation.setdefault("MobileGames","GloryOfKings")) #该方法可以去字典去取相应的Key(MobileGames)值,如果没有取到(就说明没有定义这个key),也就是新建一个新的key值 25 print(UserInformation) 26 UserInformation.update(AnotherUserInformation) #该方法可以将另外一个字典中的key和value更新到这个字典中,如果出现相同的key的话会用后面的字典中的value更新现有的value哟,所以要谨慎使用! 27 print(UserInformation) 28 dictionaries = dict.fromkeys(list_1,list_2) #这里面有2个列表,会自动将前面的列表去重并将去重后的每一个元素生成一个字典中所对应的key.然后将后面的列表当成一个内存地址同时赋值给每一个key. 29 print(dictionaries) 30 dictionaries[3][1]["name"] ="尹正杰" #如果通过fromkeys定义生成的字典,修改其中任意一个key的值,那么所有的key的value都会跟着变化哟 31 print(dictionaries) 32 33 34 35 36 #以上代码执行结果如下: 37 Skating 38 {'name': 'yinzhengjie', 'heigh': '175cm', 'habby': 'Skating'} 39 GloryOfKings 40 {'name': 'yinzhengjie', 'heigh': '175cm', 'habby': 'Skating', 'MobileGames': 'GloryOfKings'} 41 {'name': 'jujingyi', 'heigh': '175cm', 'habby': 'Go to karaoke', 'MobileGames': 'GloryOfKings', 'RepresentativeWork': '热血长安', 'Occupation': 'Singer'} 42 {1: [444, {'name': 'yinzhengjie'}, 555], 2: [444, {'name': 'yinzhengjie'}, 555], 3: [444, {'name': 'yinzhengjie'}, 555], 4: [444, {'name': 'yinzhengjie'}, 555]} 43 {1: [444, {'name': '尹正杰'}, 555], 2: [444, {'name': '尹正杰'}, 555], 3: [444, {'name': '尹正杰'}, 555], 4: [444, {'name': '尹正杰'}, 555]}
三.字典的遍历
1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 #@author :yinzhengjie 4 #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/ 5 #EMAIL:y1053419035@qq.com 6 7 8 UserInformation = { 9 "name":"yinzhengjie", 10 "heigh":"175cm", 11 "habby":"Skating" 12 } 13 14 for i in UserInformation: # 打印字典中的没有个key和value,这种方法是最高效的 15 print(i, UserInformation[i]) 16 17 print("我是分割线".center(50,"=")) 18 19 for k, v in UserInformation.items(): # 这个循环会将字典先转换成一个列表,然后再打印出来,如果数据量较小的话和上面的循环的方法差不多,但是数据量比较大的话就麻烦了. 20 print(k, v) 21 22 23 24 25 #以上代码执行结果如下: 26 name yinzhengjie 27 heigh 175cm 28 habby Skating 29 ======================我是分割线======================= 30 name yinzhengjie 31 heigh 175cm 32 habby Skating
本文来自博客园,作者:尹正杰,转载请注明原文链接:https://www.cnblogs.com/yinzhengjie/p/7828766.html,个人微信: "JasonYin2020"(添加时请备注来源及意图备注,有偿付费)
当你的才华还撑不起你的野心的时候,你就应该静下心来学习。当你的能力还驾驭不了你的目标的时候,你就应该沉下心来历练。问问自己,想要怎样的人生。
标签:
Python基础知识
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统