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中max函数用法实例分析
Jul 17 Python
Python脚本简单实现打开默认浏览器登录人人和打开QQ的方法
Apr 12 Python
Python实现Logger打印功能的方法详解
Sep 01 Python
pytorch + visdom 处理简单分类问题的示例
Jun 04 Python
Python3并发写文件与Python对比
Nov 20 Python
opencv resize图片为正方形尺寸的实现方法
Dec 26 Python
python自动化unittest yaml使用过程解析
Feb 03 Python
Python实现鼠标自动在屏幕上随机移动功能
Mar 14 Python
Django使用Profile扩展User模块方式
May 14 Python
详细分析Python collections工具库
Jul 16 Python
使用python把xmind转换成excel测试用例的实现代码
Oct 12 Python
Keras保存模型并载入模型继续训练的实现
Feb 20 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之对抗Web扫描器的脚本技巧
2008/10/01 PHP
PHP UTF8编码内的繁简转换类
2009/07/20 PHP
PHP中__get()和__set()的用法实例详解
2013/06/04 PHP
探讨各种PHP字符串函数的总结分析
2013/06/05 PHP
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
2014/04/29 PHP
Zend Framework教程之分发器Zend_Controller_Dispatcher用法详解
2016/03/07 PHP
基于PHP-FPM进程池探秘
2017/10/17 PHP
PHP守护进程化在C和PHP环境下的实现
2017/11/21 PHP
PHPUnit + Laravel单元测试常用技能
2019/11/06 PHP
判断是否输入完毕再激活提交按钮
2006/06/26 Javascript
javascript 页面只自动刷新一次
2009/07/10 Javascript
jQuery插件开发详细教程
2014/06/06 Javascript
JavaScript 学习笔记之基础中的基础
2015/01/13 Javascript
Node.js与Sails ~项目结构与Mvc实现及日志机制
2015/10/14 Javascript
BootStrap入门教程(三)之响应式原理
2016/09/19 Javascript
node.js express中app.param的用法详解
2017/07/16 Javascript
详解vue+css3做交互特效的方法
2017/11/20 Javascript
layui默认选中table的CheckBox复选框方法
2019/09/19 Javascript
vue-router的钩子函数用法实例分析
2019/10/26 Javascript
JSONP解决JS跨域问题的实现
2020/05/25 Javascript
python操作mysql中文显示乱码的解决方法
2014/10/11 Python
Python实现的弹球小游戏示例
2017/08/01 Python
Python探索之静态方法和类方法的区别详解
2017/10/27 Python
Python 面试中 8 个必考问题
2018/11/16 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
python3利用ctypes传入一个字符串类型的列表方法
2019/02/12 Python
python判断变量是否为int、字符串、列表、元组、字典的方法详解
2020/02/13 Python
对Python中 \r, \n, \r\n的彻底理解
2020/03/06 Python
利用css3画个同心圆示例代码
2017/07/03 HTML / CSS
PUMA官方商城:世界领先的运动品牌之一
2016/11/16 全球购物
创业计划书模版
2014/02/05 职场文书
医药类个人求职的自我评价
2014/02/12 职场文书
大二法英学生职业生涯规划范文
2014/02/27 职场文书
2016优秀护士先进个人事迹材料
2016/02/25 职场文书
mysql查询的控制语句图文详解
2021/04/11 MySQL
Python中time与datetime模块使用方法详解
2022/03/31 Python