您的位置:首页 > 理论基础 > 数据结构算法

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

2016-03-11 10:33 956 查看

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