浅谈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字符串转换成浮点数函数分享
Jul 24 Python
Python学习教程之常用的内置函数大全
Jul 14 Python
Python使用matplotlib绘制正弦和余弦曲线的方法示例
Jan 06 Python
python3+PyQt5实现支持多线程的页面索引器应用程序
Apr 20 Python
pygame游戏之旅 添加碰撞效果的方法
Nov 20 Python
Python读取指定日期邮件的实例
Feb 01 Python
PyCharm+Qt Designer+PyUIC安装配置教程详解
Jun 13 Python
Django使用中间件解决前后端同源策略问题
Sep 02 Python
Flask框架路由和视图用法实例分析
Nov 07 Python
快速解决jupyter notebook启动需要密码的问题
Apr 21 Python
python实现计算器简易版
Dec 17 Python
使用Python开发贪吃蛇游戏 SnakeGame
Apr 30 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
ubuntu 编译安装php 5.3.3+memcache的方法
2010/08/05 PHP
php中get_cfg_var()和ini_get()的用法及区别
2015/03/04 PHP
PHP微信模板消息操作示例
2017/06/29 PHP
写出更好的JavaScript程序之undefined篇(中)
2009/11/23 Javascript
js中数组Array的一些常用方法总结
2013/08/12 Javascript
JS获取url链接字符串 location.href
2013/12/23 Javascript
百度判断手机终端并自动跳转js代码及使用实例
2014/06/11 Javascript
javascript实现全角半角检测的方法
2015/07/23 Javascript
jquery实现手机号码选号的方法
2015/07/31 Javascript
Bootstrap导航条鼠标悬停下拉菜单
2017/01/04 Javascript
vue实现树形菜单效果
2018/03/19 Javascript
JS实现调用本地摄像头功能示例
2018/05/18 Javascript
详解@angular/cli 改变默认启动端口两种方式
2018/11/29 Javascript
Vue2.0 实现页面缓存和不缓存的方式
2019/11/12 Javascript
jQuery 淡入/淡出效果函数用法分析
2020/05/19 jQuery
JavaScript实现浏览器网页自动滚动并点击的示例代码
2020/12/05 Javascript
[01:14]英雄,所敬略同——2018完美盛典宣传视频4K
2018/12/05 DOTA
MySQLdb ImportError: libmysqlclient.so.18解决方法
2014/08/21 Python
KMP算法精解及其Python版的代码示例
2016/06/01 Python
python实现简单名片管理系统
2018/11/30 Python
Django实现发送邮件功能
2019/07/18 Python
Python中base64与xml取值结合问题
2019/12/22 Python
用python按照图像灰度值统计并筛选图片的操作(PIL,shutil,os)
2020/06/04 Python
win10下python3.8的PIL库安装过程
2020/06/08 Python
Python 如何定义匿名或内联函数
2020/08/01 Python
python实现学生信息管理系统(精简版)
2020/11/27 Python
英国最好的包装供应商:Priory Direct
2019/12/17 全球购物
自荐信要包含哪些内容
2013/11/06 职场文书
财务管理职业生涯规划书
2014/02/26 职场文书
医德医风演讲稿
2014/05/20 职场文书
员工试用期自我鉴定范文
2014/09/15 职场文书
停水通知
2015/04/16 职场文书
房屋转让协议书(标准范本)
2016/03/21 职场文书
2016年小学六一儿童节活动总结
2016/04/06 职场文书
Django+Celery实现定时任务的示例
2021/06/23 Python
彻底弄懂Python中的回调函数(callback)
2022/06/25 Python