Python:字典清单清单

发布于 2021-01-29 17:30:32

我有一个文件,其中包含以下格式的数据: 请注意,这是一个看起来像的示例,实际文件包含多于2行

1    30    5
2    64    4

我读入文件,将文本转换为整数,然后将它们存储到列表中。这是通过以下代码完成的:

file = open("dataFile.txt", "r") 
items = [] 
for line in file:
    line = map(int,line.split()) #convert the text data to integers 
    items.append(line) #add text data to list

列表的当前格式如下:

[[1, 30, 5], [2, 64, 4]]

我需要将清单列表变成字典。人们将如何去做呢?

字典键应该是第一个元素

关注者
0
被浏览
49
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    我将要进行猜测,然后假设每行的第一个数字实际上是某种顺序标识符,而您想要

    1    30    5
    2    64    4
    

    成为

    1  : [30, 5]
    2  : [64, 4]
    

    所以…

    with open("dataFile.txt") as dataFile:
        items = {}
        for line in dataFile:
            line = map(int, line.split())  #convert the text data to integers
            key, value = line[0], line[1:]
            items[key] = value
    

    (并且我已经更改了名称,file因为file()它已经是Python中的内置函数,并且将其重用于其他名称是不好的形式)。


    或者,您也可以使用字典理解,从项目列表开始:

    itemDict = {item[0]: item[1:] for item in items}
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看