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 translator使用实例
Sep 06 Python
Python中的引用和拷贝浅析
Nov 22 Python
Python 3.x读写csv文件中数字的方法示例
Aug 29 Python
Python3实现转换Image图片格式
Jun 21 Python
新年快乐! python实现绚烂的烟花绽放效果
Jan 30 Python
python批量创建指定名称的文件夹
Mar 21 Python
关于阿里云oss获取sts凭证 app直传 python的实例
Aug 20 Python
Django 对IP访问频率进行限制的例子
Aug 30 Python
python 6.7 编写printTable()函数表格打印(完整代码)
Mar 25 Python
Python转换字典成为对象,可以用&quot;.&quot;方式访问对象属性实例
May 11 Python
详解python中的lambda与sorted函数
Sep 04 Python
利用python爬取有道词典的方法
Dec 08 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
探讨:parse url解析URL,返回其组成部分
2013/06/14 PHP
php实现有趣的人品测试程序实例
2015/06/08 PHP
php实现上传图片文件代码
2015/07/19 PHP
Zend Studio使用技巧两则
2016/04/01 PHP
PHP面向对象程序设计__tostring()和__invoke()用法分析
2019/06/12 PHP
用js 让图片在 div或dl里 居中,底部对齐
2008/01/21 Javascript
VBS通过WMI监视注册表变动的代码
2011/10/27 Javascript
JS获取浏览器版本及名称实现函数
2013/04/02 Javascript
js如何取消事件冒泡
2013/09/23 Javascript
基于Javascript实现二级联动菜单效果
2016/03/04 Javascript
JavaScript驾驭网页-CSS与DOM
2016/03/24 Javascript
学习使用bootstrap基本控件(table、form、button)
2016/04/12 Javascript
JS实现将数字金额转换为大写人民币汉字的方法
2016/08/02 Javascript
Bootstrap树形菜单插件TreeView.js使用方法详解
2016/11/01 Javascript
js选项卡的制作方法
2017/01/23 Javascript
深入理解Javascript箭头函数中的this
2017/02/13 Javascript
js时间戳格式化成日期格式的多种方法介绍
2017/02/16 Javascript
浅谈 Vue 项目优化的方法
2017/12/16 Javascript
vue中使用ueditor富文本编辑器
2018/02/08 Javascript
React Native 图片查看组件的方法
2018/03/01 Javascript
vue组件开发之用户无限添加自定义填写表单的方法
2018/08/28 Javascript
python赋值操作方法分享
2013/03/23 Python
python Django连接MySQL数据库做增删改查
2013/11/07 Python
python实现决策树
2017/12/21 Python
Python 使用PIL numpy 实现拼接图片的示例
2018/05/08 Python
解决pycharm界面不能显示中文的问题
2018/05/23 Python
Python的argparse库使用详解
2018/10/09 Python
selenium+python自动化测试之环境搭建
2019/01/23 Python
Python实现从N个数中找到最大的K个数
2020/04/02 Python
Python OpenCV去除字母后面的杂线操作
2020/07/05 Python
HTML5之HTML元素扩展(下)—增强的Form表单元素值得关注
2013/01/31 HTML / CSS
交通事故协议书范文
2014/04/16 职场文书
汽车专业求职信
2014/06/05 职场文书
单方投资意向书
2015/05/11 职场文书
乡镇党建工作总结2015
2015/05/19 职场文书
2016庆祝教师节新闻稿
2015/11/25 职场文书