浅谈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 相关文章推荐
wxPython框架类和面板类的使用实例
Sep 28 Python
用Python写一个无界面的2048小游戏
May 24 Python
Python编程实现蚁群算法详解
Nov 13 Python
pandas 对每一列数据进行标准化的方法
Jun 09 Python
Django管理员账号和密码忘记的完美解决方法
Dec 06 Python
Python多进程fork()函数详解
Feb 22 Python
Django基础知识 web框架的本质详解
Jul 18 Python
Django REST Framework序列化外键获取外键的值方法
Jul 26 Python
Python3.9 beta2版本发布了,看看这7个新的PEP都是什么
Jun 10 Python
keras 多任务多loss实例
Jun 22 Python
python dir函数快速掌握用法技巧
Dec 09 Python
Pandas的数据过滤实现
Jan 15 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数组的使用方法小结
2010/09/23 PHP
注意:php5.4删除了session_unregister函数
2013/08/05 PHP
一个显示效果非常不错的PHP错误、异常处理类
2014/03/21 PHP
非常有用的9个PHP代码片段
2016/04/06 PHP
详解Yii2 之 生成 URL 的方法
2017/06/16 PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
2017/11/10 PHP
Ajax+Jpgraph实现的动态折线图功能示例
2019/02/11 PHP
在laravel框架中使用model层的方法
2019/10/08 PHP
jquery中对表单的基本操作代码
2010/07/29 Javascript
jquery ajax属性async(同步异步)示例
2013/11/05 Javascript
js在数组中删除重复的元素自保留一个(两种实现思路)
2014/08/22 Javascript
DOM基础教程之使用DOM设置文本框
2015/01/20 Javascript
jqgrid实现简单的单行编辑功能
2017/09/30 Javascript
AngularJS实现的锚点楼层跳转功能示例
2018/01/02 Javascript
解决vue多个路由共用一个页面的问题
2018/03/12 Javascript
微信小程序上传图片实例
2018/05/28 Javascript
antd多选下拉框一行展示的实现方式
2020/10/31 Javascript
[01:44]《为梦想出发》—联想杯DOTA2完美世界全国高校联赛
2015/09/30 DOTA
[00:14]护身甲盾
2019/03/06 DOTA
Python中你应该知道的一些内置函数
2017/03/31 Python
Python操作mysql数据库实现增删查改功能的方法
2018/01/15 Python
python实现PID算法及测试的例子
2019/08/08 Python
python字符串格式化方式解析
2019/10/19 Python
使用Keras训练好的.h5模型来测试一个实例
2020/07/06 Python
PyTorch实现重写/改写Dataset并载入Dataloader
2020/07/14 Python
Python全局变量与global关键字常见错误解决方案
2020/10/05 Python
Html5百叶窗效果的示例代码
2017/12/11 HTML / CSS
建议书的格式
2014/05/12 职场文书
2014领导班子四风剖析对照检查材料思想汇报
2014/09/20 职场文书
律师授权委托书范本
2014/10/07 职场文书
成品仓库管理员岗位职责
2015/04/09 职场文书
结婚纪念日感言
2015/08/01 职场文书
中秋节感想
2015/08/10 职场文书
《普罗米修斯》教学反思
2016/02/22 职场文书
nginx 多个location转发任意请求或访问静态资源文件的实现
2021/03/31 Servers
python如何利用cv2模块读取显示保存图片
2021/06/04 Python