从列表python创建字典

我有许多这种格式的清单:


['1', 'O1', '', '', '', '0.0000', '0.0000', '', '']

['2', 'AP', '', '', '', '35.0000', '105.0000', '', '']

['3', 'EU', '', '', '', '47.0000', '8.0000', '', '']

我需要创建一个字典,其中键是列表中的第一个元素,值是整个列表。没有按键在重复。最好的方法是什么?


qq_笑_17
浏览 257回答 3
3回答

繁花不似锦

将所有列表放在另一个列表中,然后执行以下操作:my_dict = {}for list in lists:  my_dict[list[0]] = list[:]这基本上得到了第一个元素,并将其作为键,my_dict并将列表作为值。

蛊毒传说

>>> 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', '', '']}

GCT1015

如果索引是顺序整数,则可以使用列表而不是字典:lst = [None]+[x[1:] for x in sorted(lists)]不过,只有在确实适合您的问题时才使用它。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python