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中IPYTHON入门实例
May 11 Python
Python构造自定义方法来美化字典结构输出的示例
Jun 16 Python
通过5个知识点轻松搞定Python的作用域
Sep 09 Python
Python随机数用法实例详解【基于random模块】
Apr 18 Python
Python 读写文件的操作代码
Sep 20 Python
Django csrf 两种方法设置form的实例
Feb 03 Python
Python File(文件) 方法整理
Feb 18 Python
Django实现跨域的2种方法
Jul 31 Python
Django stark组件使用及原理详解
Aug 22 Python
python-tornado的接口用swagger进行包装的实例
Aug 29 Python
在Mac中PyCharm配置python Anaconda环境过程图解
Mar 11 Python
在python3.9下如何安装scrapy的方法
Feb 03 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延迟静态绑定示例分享
2014/06/22 PHP
PHP中IP地址与整型数字互相转换详解
2014/08/20 PHP
完美解决在ThinkPHP控制器中命名空间的问题
2017/05/05 PHP
浅析PHP7的多进程及实例源码
2019/04/14 PHP
php常用日期时间函数实例小结
2019/07/04 PHP
jQuery 1.0.4 - New Wave Javascript(js源文件)
2007/01/15 Javascript
cnblogs csdn 代码运行框实现代码
2009/11/02 Javascript
jquery键盘事件使用介绍
2011/11/01 Javascript
统计jQuery中各字符串出现次数的工具
2012/05/03 Javascript
jQuery使用数组编写图片无缝向左滚动
2012/12/11 Javascript
鼠标滚轮控制网页横向移动实现思路
2013/03/22 Javascript
如何使用json在前后台进行数据传输实例介绍
2013/04/11 Javascript
javascript实现分栏显示小技巧附图
2014/10/13 Javascript
jQuery实现购物车数字加减效果
2015/03/14 Javascript
js+cookies实现悬浮购物车的方法
2015/05/25 Javascript
jquery实现先淡出再折叠收起的动画效果
2015/08/07 Javascript
Immutable 在 JavaScript 中的应用
2016/05/02 Javascript
微信小程序实现底部导航
2018/11/05 Javascript
uni-app自定义导航栏按钮|uniapp仿微信顶部导航条功能
2019/11/12 Javascript
vue 查看dist文件里的结构(多种方式)
2020/01/17 Javascript
vue结合el-upload实现腾讯云视频上传功能
2020/07/01 Javascript
Vue为什么要谨慎使用$attrs与$listeners
2020/08/27 Javascript
javascript实现打砖块小游戏(附完整源码)
2020/09/18 Javascript
vue实现图书管理系统
2020/12/29 Vue.js
Python函数返回不定数量的值方法
2019/01/22 Python
在Pandas中处理NaN值的方法
2019/06/25 Python
python实现windows倒计时锁屏功能
2019/07/30 Python
python函数定义和调用过程详解
2020/02/09 Python
关于Tensorflow 模型持久化详解
2020/02/12 Python
python实现最速下降法
2020/03/24 Python
让Django的BooleanField支持字符串形式的输入方式
2020/05/20 Python
Omio波兰:全欧洲低价大巴、火车和航班搜索和比价
2018/02/16 全球购物
英国办公用品商店:Office Outlet
2018/04/04 全球购物
adidas澳大利亚官方网站:adidas Australia
2018/04/15 全球购物
博士生专家推荐信
2014/09/26 职场文书
六一晚会主持词开场白
2015/05/28 职场文书