Python实现列表转换成字典数据结构的方法
本文实例讲述了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(lambdax:(x.get('symbol'),x),students) printsymbol_list print'-----------------------------------------' printdict(symbol_list) #value_list=map(lambdax:x,students) # ##printdict(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'} ] printsorted(students,key=lambdas:s["name"]) printsorted(students,key=lambdas:s["price"],reverse=True) printsorted(students,key=lambdas:s["date"],reverse=True) aa=sorted(students,key=lambdas:s["price"],reverse=True) sorted(aa,key=lambdas:s["date"],reverse=True) symbol_arr=[<Symbol:Symbolobject>,<Symbol:Symbolobject>,<Symbol:Symbolobject>] sorted(symbol_arr,key=lambdas:s.amount,reverse=True)
希望本文所述对大家Python程序设计有所帮助。