我有很多这种格式的列表:
['1', 'O1', '', '', '', '0.0000', '0.0000', '', '']
['2', 'AP', '', '', '', '35.0000', '105.0000', '', '']
['3', 'EU', '', '', '', '47.0000', '8.0000', '', '']
我需要创建一个字典,以列表中的第一个元素为键,整个列表为值。没有重复的键。 最好的方法是什么?
我有很多这种格式的列表:
['1', 'O1', '', '', '', '0.0000', '0.0000', '', '']
['2', 'AP', '', '', '', '35.0000', '105.0000', '', '']
['3', 'EU', '', '', '', '47.0000', '8.0000', '', '']
我需要创建一个字典,以列表中的第一个元素为键,整个列表为值。没有重复的键。 最好的方法是什么?
>>> lists = [['1', 'O1', '', '', '', '0.0000', '0.0000', '', ''],
['2', 'AP', '', '', '', '35.0000', '105.0000', '', ''],
['3', 'EU', '', '', '', '47.0000', '8.0000', '', '']]
>>> {x[0]: x for x in lists}
{'1': ['1', 'O1', '', '', '', '0.0000', '0.0000', '', ''], '3': ['3', 'EU', '', '', '', '47.0000', '8.0000', '', ''], '2': ['2', 'AP', '', '', '', '35.0000', '105.0000', '', '']}
将所有列表放入另一个列表中,然后执行以下操作:
my_dict = {}
for list in lists:
my_dict[list[0]] = list[:]
my_dict
中,并将列表作为值放入其中。lst = [None]+[x[1:] for x in sorted(lists)]
只有在它真正适合您的问题时才使用它。