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使用PIL模块实现给图片打水印的方法
May 22 Python
Python中函数的参数传递与可变长参数介绍
Jun 30 Python
Python编程把二叉树打印成多行代码
Jan 04 Python
PyQt5每天必学之拖放事件
Aug 27 Python
对Python3中的input函数详解
Apr 22 Python
python排序函数sort()与sorted()的区别
Sep 18 Python
python自动化测试之如何解析excel文件
Jun 27 Python
Django框架视图层URL映射与反向解析实例分析
Jul 29 Python
Flask项目中实现短信验证码和邮箱验证码功能
Dec 05 Python
python正则表达式实例代码
Mar 03 Python
总结Pyinstaller的坑及终极解决方法(小结)
Sep 21 Python
python操作xlsx格式文件并读取
Jun 02 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文件向另一个地址post数据,不用表单和隐藏的变量的
2007/03/06 PHP
php中强制下载文件的代码(解决了IE下中文文件名乱码问题)
2011/05/09 PHP
php 可变函数使用小结
2018/06/12 PHP
javascript for循环设法提高性能
2010/02/24 Javascript
javascript 实现子父窗体互相传值的简单实例
2014/02/17 Javascript
Jquery方式获取iframe页面中的 Dom元素
2014/05/07 Javascript
JavaScript阻止事件冒泡示例分享
2014/12/28 Javascript
js实现prototype扩展的方法(字符串,日期,数组扩展)
2016/01/14 Javascript
jQuery中的Deferred和promise 的区别
2016/04/03 Javascript
Vue异步组件使用详解
2017/04/08 Javascript
JS/jquery实现一个网页内同时调用多个倒计时的方法
2017/04/27 jQuery
javaScript中&quot;==&quot;和&quot;===&quot;的区别详解
2018/03/16 Javascript
Vue父子组件双向绑定传值的实现方法
2018/07/31 Javascript
浅谈从React渲染流程分析Diff算法
2018/09/08 Javascript
使用ng-packagr打包Angular的方法示例
2018/09/21 Javascript
详解搭建es6+devServer简单开发环境
2018/09/25 Javascript
浅谈Fetch 数据交互方式
2018/12/20 Javascript
浅谈Webpack多页应用HMR卡住问题
2019/04/24 Javascript
小程序实现列表倒计时功能
2021/01/29 Javascript
[03:42]2014DOTA2国际邀请赛 第三日比赛排位扑朔迷离
2014/07/12 DOTA
跟老齐学Python之玩转字符串(2)
2014/09/14 Python
Python读csv文件去掉一列后再写入新的文件实例
2017/12/28 Python
关于Tensorflow中的tf.train.batch函数的使用
2018/04/24 Python
如何用Python实现简单的Markdown转换器
2018/07/16 Python
python和php哪个更适合写爬虫
2020/06/22 Python
使用spring mvc+localResizeIMG实现HTML5端图片压缩上传的功能
2016/12/16 HTML / CSS
韩国11街:11STREET
2018/03/27 全球购物
Microsoft Advertising美国:微软搜索广告
2019/05/01 全球购物
希腊香水和化妆品购物网站:Parfimo.gr
2019/10/03 全球购物
如何获得EntityManager
2014/02/09 面试题
安全生产责任书
2014/03/12 职场文书
租房合同协议书
2014/04/09 职场文书
2014年财政局工作总结
2014/12/09 职场文书
高中教师个人工作总结
2015/02/10 职场文书
小兵张嘎观后感
2015/06/03 职场文书
2016中秋节问候语
2015/11/11 职场文书