【发布时间】:2016-05-29 18:34:55
【问题描述】:
如何更改这样的列表:
[[0, 'Ealing Broadway', 103.89],
[0, 'Notting Hill Gate', 103.89],
[0, 'Mile End', 103.89],
[1, 'Ealing Broadway', 59.089999999999996],
[2, 'Notting Hill Gate', 40.279999999999994],
[3, 'Mile End', 68.86999999999999]]
像字典一样
{0:{'length':103.89,'interchange':['Ealing Broadway','Notting Hill Gate','Mile End']},
1:{'length':59.089999999999996,'interchange':['Ealing Broadway']},
2:{'length':40.279999999999994,'interchange':['Notting Hill Gate']},
3:{'length':68.86999999999999,'interchange':['Mile End']}}
谢谢
I am trying to start with:
d2 = defaultdict(list)
for k, v in all_info:
d2[k].append(v)
with_length=dict((k,list(v)) for k,v in d2.iteritems())
with_length
但它不起作用,我正在努力从哪里开始。
【问题讨论】:
-
子列表中第一个元素的值是否总是表示子列表中最后一个元素的值相同?
-
我很好奇这些“长度”指的是什么。平台长度?
-
0,1,2,3 可以理解为路由。车站名称是这条路线的交汇处。最终值是路线的长度。
-
你可以用pandas模块解决吗?
-
我不这么认为,因为我需要处理大量数据。 Pandas 可能会减慢这个过程。
标签: python list dictionary key-value-store