浅谈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输出指定月份日历的方法
Apr 23 Python
Python ldap实现登录实例代码
Sep 30 Python
windows及linux环境下永久修改pip镜像源的方法
Nov 28 Python
Python实现遍历目录的方法【测试可用】
Mar 22 Python
python时间日期函数与利用pandas进行时间序列处理详解
Mar 13 Python
对Python中type打开文件的方式介绍
Apr 28 Python
使用python实现快速搭建简易的FTP服务器
Sep 12 Python
对Python3 解析html的几种操作方式小结
Feb 16 Python
TensorFlow实现从txt文件读取数据
Feb 05 Python
python之MSE、MAE、RMSE的使用
Feb 24 Python
tensorflow模型的save与restore,及checkpoint中读取变量方式
May 26 Python
python 多线程爬取壁纸网站的示例
Feb 20 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
PHP命名空间(namespace)的使用基础及示例
2014/08/18 PHP
php中in_array函数用法探究
2014/11/25 PHP
PHP中开启gzip压缩的2种方法
2015/01/31 PHP
PHP连接MySQL数据库并以json格式输出
2018/05/21 PHP
PDO::inTransaction讲解
2019/01/28 PHP
php将字符串转换为数组实例讲解
2020/05/05 PHP
JQuery触发radio或checkbox的change事件
2012/12/18 Javascript
下拉列表select 由左边框移动到右边示例
2013/12/04 Javascript
多个checkbox被选中时如何判断是否有自己想要的
2014/09/22 Javascript
js对字符的验证方法汇总
2015/02/04 Javascript
JS 面向对象之继承---多种组合继承详解
2016/07/10 Javascript
微信开发 使用picker封装省市区三级联动模板
2016/10/28 Javascript
bootstrap table复杂操作代码
2016/11/01 Javascript
vue.js初学入门教程(2)
2016/11/07 Javascript
js实现图片加载淡入淡出效果
2017/04/07 Javascript
ES5 ES6中Array对象去除重复项的方法总结
2017/04/27 Javascript
jQuery层级选择器_动力节点节点Java学院整理
2017/07/04 jQuery
jQuery实现的粘性滚动导航栏效果实例【附源码下载】
2017/10/19 jQuery
vue2.0 + element UI 中 el-table 数据导出Excel的方法
2018/03/02 Javascript
iview日期控件,双向绑定日期格式的方法
2018/03/15 Javascript
js实现滑动进度条效果
2020/08/21 Javascript
python中reduce()函数的使用方法示例
2017/09/29 Python
python里使用正则表达式的组嵌套实例详解
2017/10/24 Python
Python3.4学习笔记之 idle 清屏扩展插件用法分析
2019/03/01 Python
给大家整理了19个pythonic的编程习惯(小结)
2019/09/25 Python
Python终端输出彩色字符方法详解
2020/02/11 Python
解决tensorflow 释放图,删除变量问题
2020/06/23 Python
python3.4中清屏的处理方法
2020/07/06 Python
python中Pexpect的工作流程实例讲解
2021/03/02 Python
css3给背景图片加颜色遮罩的方法
2019/11/05 HTML / CSS
技校学生个人职业生涯规划范文
2014/03/03 职场文书
党支部党的群众路线对照检查材料
2014/09/24 职场文书
2019经典广告词集锦!
2019/07/02 职场文书
最新最全的手机号验证正则表达式
2022/02/24 Javascript
十大必看国产动漫排名,魁拔上线,第二曾在日本播出
2022/03/18 国漫
Python何绘制带有背景色块的折线图
2022/04/23 Python