浅谈Python列表嵌套字典转化的问题


Posted in Python onApril 07, 2021

在看视频教程的时候提到了[{'a' : 97}, {'b' : 98}, {'c' : 99}, {'d' : 100}, {'e' : 101}, ...........]形式的列表嵌套形式,

要求是将上述列表转换为{'a' : 97,'b' : 98,'c' : 99 ,'d' : 100,'e' : 101,。。。。。}的字典形式

首先上述的a--->97, b--->98,。。。。。意思是key为a到z的英文小写字母,value值为对应的ascii码,

那么一开始可以结合range()方法定义变量如下:

浅谈Python列表嵌套字典转化的问题

那么alpha = ['a','b','c',........'z']

转换为[{'a' : 97}, {'b' : 98}, {'c' : 99}, {'d' : 100}, {'e' : 101}, ...........]的代码可以结合map()函数来生成

浅谈Python列表嵌套字典转化的问题

函数运行结果:

浅谈Python列表嵌套字典转化的问题

其实就是将[{'a' : 97}, {'b' : 98}, {'c' : 99}, {'d' : 100}, {'e' : 101}, ...........]遍历打印出来的结果。

然后就是要将上述的形式转换为

{'a' : 97,'b' : 98,'c' : 99 ,'d' : 100,'e' : 101,。。。。。}

本人采用的是Python字典中的items()函数方法:

i.items()的作用:使 { x : y } ---------》[ (x , y ) ]

结果就是:

{'a' : 97}, {'b' : 98}, {'c' : 99}, {'d' : 100}, {'e' : 101}, ...........---------》 [('a' , 97)],[('b' : 98)],........

也就是 一个i.items() 代表一个[ ( x , y) ] 字典列表

双重循环遍历输出i.items()结果:

浅谈Python列表嵌套字典转化的问题

浅谈Python列表嵌套字典转化的问题

程序的目的是获得对应的key,value值:

浅谈Python列表嵌套字典转化的问题

浅谈Python列表嵌套字典转化的问题

然后将上述的数据放到新定义的空字典中:

浅谈Python列表嵌套字典转化的问题

浅谈Python列表嵌套字典转化的问题

补充:python判断字典是嵌套和嵌套字典列表

如下所示:

#coding: utf-8
import types
#获取字典中的objkey对应的值,适用于字典嵌套
#dict:字典
#objkey:目标key
#default:找不到时返回的默认值
def dict_get(dict, objkey, default):
 tmp = dict
 for k,v in tmp.items():
  if k == objkey:
   return v
  else:
   if type(v) is types.DictType:
    ret = dict_get(v, objkey, default)
    if ret is not default:
     return ret
 return default
#如
dicttest={"result":{"code":"110002","msg":"设备设备序列号或验证码错误"}}
ret=dict_get(dicttest, 'msg', None)
print(ret)

字典的列表

"network": {
  "tls": [],
  "udp": [
   {
    "src": "192.168.56.102",
    "dst": "114.114.114.114",
    "offset": 2372,
    "time": 9.506472110748291,
    "dport": 53,
    "sport": 51394
   },
   {
    "src": "192.168.56.102",
    "dst": "114.114.114.114",
    "offset": 2611,
    "time": 2.232347011566162,
    "dport": 53,
    "sport": 53604
   }]
   }
for k,v in mydict.items():
   if type(v) is types.ListType:
    for val in v:
     if type(val) is types.DictType:
      for key,value in val.items():
       print("%s:%s"%(key,value))
   else:
    print("%s:%s"%(k,v))

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
python进阶教程之模块(module)介绍
Aug 30 Python
Python selenium 三种等待方式解读
Sep 15 Python
在python的类中动态添加属性与生成对象
Sep 17 Python
Python标准库sched模块使用指南
Jul 06 Python
详解Python中 sys.argv[]的用法简明解释
Dec 20 Python
Python使用Matplotlib实现雨点图动画效果的方法
Dec 23 Python
解决python中使用plot画图,图不显示的问题
Jul 04 Python
解决python3中cv2读取中文路径的问题
Dec 05 Python
Python常见数据结构之栈与队列用法示例
Jan 14 Python
两个元祖T1=('a', 'b'),T2=('c', 'd')使用匿名函数将其转变成[{'a': 'c'},{'b': 'd'}]的几种方法
Mar 05 Python
Python+selenium点击网页上指定坐标的实例
Jul 05 Python
django template实现定义临时变量,自定义赋值、自增实例
Jul 12 Python
python pyhs2 的安装操作
Apr 07 #Python
python3 sqlite3限制条件查询的操作
Apr 07 #Python
python实现高效的遗传算法
解决hive中导入text文件遇到的坑
Apr 07 #Python
python - asyncio异步编程
Apr 06 #Python
python - timeit 时间模块
Apr 06 #Python
python制作图形界面的2048游戏, 基于tkinter
You might like
一个ubbcode的函数,速度很快.
2006/10/09 PHP
php数组函数序列之array_unique() - 去除数组中重复的元素值
2011/10/29 PHP
php数组中删除元素的实现代码
2012/06/22 PHP
百度工程师讲PHP函数的实现原理及性能分析(三)
2015/05/13 PHP
Javascript 调试利器 Firebug使用详解六
2009/07/05 Javascript
一个简单的js渐显(fadeIn)渐隐(fadeOut)类
2010/06/19 Javascript
19个很有用的 JavaScript库推荐
2011/06/27 Javascript
JQuery 图片的展开和伸缩实例讲解
2013/04/18 Javascript
JQuery事件e参数的方法preventDefault()取消默认行为
2013/09/26 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
javascript实现在网页任意处点左键弹出隐藏菜单的方法
2015/05/13 Javascript
jQuery带进度条全屏图片轮播特效代码分享
2020/06/28 Javascript
JavaScript高级程序设计(第三版)学习笔记1~5章
2016/03/11 Javascript
JavaScript 数组中最大最小值
2016/06/05 Javascript
分享JS数组求和与求最大值的方法
2016/08/11 Javascript
使用jQuery的ajax方法向服务器发出get和post请求的方法
2017/01/13 Javascript
vue-cli构建项目使用 less的方法
2017/10/04 Javascript
在vue中实现点击选择框阻止弹出层消失的方法
2018/09/15 Javascript
angularJs在多个控制器中共享服务数据的方法
2018/09/30 Javascript
使用nvm和nrm优化node.js工作流的方法
2019/01/17 Javascript
vue项目打包后上传至GitHub并实现github-pages的预览
2019/05/06 Javascript
详解vuejs中执行npm run dev出现页面cannot GET/问题
2020/04/26 Javascript
2020淘宝618理想生活列车自动领喵币js脚本的代码
2020/06/02 Javascript
解决在Vue中使用axios POST请求变成OPTIONS的问题
2020/08/14 Javascript
Python标准模块--ContextManager上下文管理器的具体用法
2017/11/27 Python
Win8.1下安装Python3.6提示0x80240017错误的解决方法
2018/07/31 Python
DataFrame:通过SparkSql将scala类转为DataFrame的方法
2019/01/29 Python
Python with标签使用方法解析
2020/01/17 Python
VS2019+python3.7+opencv4.1+tensorflow1.13配置详解
2020/04/16 Python
巧用 CSS3的webkit-box-reflect 倒影实现各类动效
2021/03/05 HTML / CSS
奥地利顶级内衣丝袜品牌英国站:Wolford英国
2016/08/29 全球购物
美国定制钻石订婚戒指:Ritani
2017/12/08 全球购物
英国在线花园中心:You Garden
2018/06/03 全球购物
英国PC组件和在线电脑商店:SCAN
2019/04/18 全球购物
财会专业毕业生自荐信
2014/07/09 职场文书
写给消防战士们的一封慰问信
2019/10/07 职场文书