Python实现列表转换成字典数据结构的方法


Posted in Python onMarch 11, 2016

本文实例讲述了Python实现列表转换成字典数据结构的方法。分享给大家供大家参考,具体如下:

'''
[
  {'symbol': 101, 'sort': 1, 'name': 'aaaa'},
  {'symbol': 102, 'sort': 2, 'name': 'bbbb'},
  {'symbol': 103, 'sort': 3, 'name': 'cccc'},
  {'symbol': 104, 'sort': 4, 'name': 'dddd'},
  {'symbol': 105, 'sort': 5, 'name': 'eeee'},
  {'symbol': 106, 'sort': 6, 'name': 'ffff'},
  {'symbol': 107, 'sort': 7, 'name': 'gggg'},
  {'symbol': 108, 'sort': 8, 'name': 'hhhh'},
  {'symbol': 109, 'sort': 9, 'name': 'iiii'}
]
转换成如下的结构,便于通过ID获取记录值
{
  101: {'sort': 1, 'symbol': 101, 'name': 'aaaa'},
  102: {'sort': 2, 'symbol': 102, 'name': 'bbbb'},
  103: {'sort': 3, 'symbol': 103, 'name': 'cccc'},
  104: {'sort': 4, 'symbol': 104, 'name': 'dddd'},
  105: {'sort': 5, 'symbol': 105, 'name': 'eeee'},
  106: {'sort': 6, 'symbol': 106, 'name': 'ffff'},
  107: {'sort': 7, 'symbol': 107, 'name': 'gggg'},
  108: {'sort': 8, 'symbol': 108, 'name': 'hhhh'},
  109: {'sort': 9, 'symbol': 109, 'name': 'iiii'}
}
'''
students = [
    {'symbol': 101, 'sort': 1, 'name': 'aaaa'},
    {'symbol': 102, 'sort': 2, 'name': 'bbbb'},
    {'symbol': 103, 'sort': 3, 'name': 'cccc'},
    {'symbol': 104, 'sort': 4, 'name': 'dddd'},
    {'symbol': 105, 'sort': 5, 'name': 'eeee'},
    {'symbol': 106, 'sort': 6, 'name': 'ffff'},
    {'symbol': 107, 'sort': 7, 'name': 'gggg'},
    {'symbol': 108, 'sort': 8, 'name': 'hhhh'},
    {'symbol': 109, 'sort': 9, 'name': 'iiii'}
  ]
symbol_list = map(lambda x: (x.get('symbol'), x), students)
print symbol_list
print '-----------------------------------------'
print dict(symbol_list)
#value_list = map(lambda x: x, students)
#
##print dict(zip(symbol_list, value_list))
#
#
#student = {
#    101: {'symbol': 101, 'sort': 1, 'name': 'aaaa'}
#    }
#
#student = [
#    {101: {'symbol': 101, 'sort': 1, 'name': 'aaaa'}}
#    ]
#

排序用法:

students = [
      {'name':'zhangsan', 'price':20.01, 'date':'2015-01-09T01:00:00Z'},
      {'name':'lisi', 'price':10.01, 'date':'2013-01-09T01:00:00Z'},
      {'name':'wangwu', 'price':0.01, 'date':'2012-01-09T01:00:00Z'}
] 
print sorted(students, key=lambda s:s["name"])
print sorted(students, key=lambda s:s["price"], reverse=True)
print sorted(students, key=lambda s:s["date"], reverse=True)
aa = sorted(students, key=lambda s:s["price"], reverse=True)
sorted(aa, key=lambda s:s["date"], reverse=True)
symbol_arr = [<Symbol: Symbol object>, <Symbol: Symbol object>, <Symbol: Symbol object>] 
sorted(symbol_arr, key=lambda s:s.amount, reverse=True)

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python fileinput模块使用实例
Jun 03 Python
Python获取当前路径实现代码
May 08 Python
100行Python代码实现自动抢火车票(附源码)
Jan 11 Python
基于sklearn实现Bagging算法(python)
Jul 11 Python
python实时检测键盘输入函数的示例
Jul 17 Python
Python 异常的捕获、异常的传递与主动抛出异常操作示例
Sep 23 Python
Python读取表格类型文件代码实例
Feb 17 Python
Python numpy多维数组实现原理详解
Mar 10 Python
k-means 聚类算法与Python实现代码
Jun 01 Python
Django中和时区相关的安全问题详解
Oct 12 Python
Python实现简单猜数字游戏
Feb 03 Python
解决import tensorflow导致jupyter内核死亡的问题
Feb 06 Python
python中enumerate函数遍历元素用法分析
Mar 11 #Python
python实现class对象转换成json/字典的方法
Mar 11 #Python
Windows下Python的Django框架环境部署及应用编写入门
Mar 10 #Python
深入学习python的yield和generator
Mar 10 #Python
Python中random模块生成随机数详解
Mar 10 #Python
python生成器表达式和列表解析
Mar 10 #Python
python迭代器与生成器详解
Mar 10 #Python
You might like
一个php作的文本留言本的例子(四)
2006/10/09 PHP
php中$_REQUEST、$_POST、$_GET的区别和联系小结
2011/11/23 PHP
php inc文件使用的风险和注意事项
2013/11/12 PHP
php插入排序法实现数组排序实例
2015/02/16 PHP
PHP进行批量任务处理不超时的解决方法
2016/07/11 PHP
javascript 原型模式实现OOP的再研究
2009/04/09 Javascript
基于jquery的防止大图片撑破页面的实现代码(立即缩放)
2011/10/24 Javascript
js实现单一html页面两套css切换代码
2013/04/11 Javascript
Jquery 动态生成表格示例代码
2013/12/24 Javascript
js常用自定义公共函数汇总
2014/01/15 Javascript
JS实现文字链接感应鼠标淡入淡出改变颜色的方法
2015/02/26 Javascript
jQuery实现Tab菜单滚动切换的方法
2015/09/21 Javascript
JQuery为元素添加样式的实现方法
2016/07/20 Javascript
Angular.js实现注册系统的实例详解
2016/12/18 Javascript
nodejs项目windows下开机自启动的方法
2017/11/22 NodeJs
微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】
2017/12/06 Javascript
vue.js整合mint-ui里的轮播图实例代码
2017/12/27 Javascript
JS动画实现回调地狱promise的实例代码详解
2018/11/08 Javascript
微信小程序 slot踩坑的解决
2019/04/01 Javascript
JS实现移动端在线签协议功能
2019/08/22 Javascript
解决vue项目中页面调用数据 在数据加载完毕之前出现undefined问题
2019/11/14 Javascript
解决vue-router 嵌套路由没反应的问题
2020/09/22 Javascript
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
在JavaScript中查找字符串中最长单词的三种方法(推荐)
2021/01/18 Javascript
python计算圆周长、面积、球体体积并画出圆
2014/04/08 Python
itchat接口使用示例
2017/10/23 Python
Python可变和不可变、类的私有属性实例分析
2019/05/31 Python
解决python 3 urllib 没有 urlencode 属性的问题
2019/08/22 Python
python爬取豆瓣电影排行榜(requests)的示例代码
2021/02/18 Python
HTML5 Web 存储详解
2016/09/16 HTML / CSS
乡镇消防工作实施方案
2014/03/27 职场文书
大学竞选班干部演讲稿
2014/08/21 职场文书
四风问题对照检查材料思想汇报
2014/10/07 职场文书
护士自荐信范文
2015/03/25 职场文书
培训简讯范文
2015/07/20 职场文书
2019年教师入党申请书
2019/06/27 职场文书