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

作者:Ruthless 时间:2023-03-17 22:59:09 

本文实例讲述了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,列表,字典
0
投稿

猜你喜欢

  • python中input()的用法及扩展

    2021-07-05 08:45:57
  • jquery实现不同大小浏览器使用不同的css样式表的方法

    2024-04-10 10:34:53
  • 商业价值与用户价值的平衡

    2008-12-10 18:42:00
  • python实现合并两个有序列表的示例代码

    2021-06-02 20:07:29
  • 网页中空格的烦恼

    2011-04-28 09:26:00
  • python 读写excel文件操作示例【附源码下载】

    2023-02-20 09:26:31
  • 分析与比较五种MySQL数据库可靠性方案

    2009-07-30 08:25:00
  • 详解Python中表达式i += x与i = i + x是否等价

    2023-07-29 06:51:12
  • go语言数据结构之前缀树Trie

    2023-08-05 18:15:50
  • 优雅使用GoFrame共享变量Context示例详解

    2024-04-27 15:27:02
  • python实现输出一个序列的所有子序列示例

    2022-04-13 18:34:45
  • 使用Title提升可访问性

    2009-04-04 17:06:00
  • location.href 在IE6中不跳转的解决方法与推荐使用代码

    2024-04-19 10:13:38
  • 通过python实现windows桌面截图代码实例

    2023-11-19 03:46:27
  • 使用python实现excel的Vlookup功能

    2023-05-01 20:15:15
  • 用 Python 连接 MySQL 的几种方式详解

    2023-07-25 08:08:50
  • Django REST framework 如何实现内置访问频率控制

    2023-08-01 17:11:00
  • 谦逊编程(翻译整理)

    2009-07-28 12:52:00
  • 最近项目写了一些js,水平有待提高

    2024-06-23 04:58:42
  • 精美漂亮的php分页类代码

    2023-11-22 08:28:09
  • asp之家 网络编程 m.aspxhome.com