将两个字符串放入一个键,其余的从文件的多行放入值

时间:2019-11-16 19:29:19

标签: python file dictionary

我的文件具有以下内容:

House Plant, 2, 5, 6
House Plant1, 4, 5, 7
... and so on

我希望两个词作为键,数字作为整数值,并将所有行放入字典中。

{'House Plant':[2,5,6],'House Plant1':[4,5,7], etc}

这并不是真的那样:

dictionary = {}

with open("persons.dat","r") as file:
    for line in file:
        items = line.split()
        key, values = items[1], items[2:]
        dictionary.setdefault(key,[]).extend(values)
    print(items)

2 个答案:

答案 0 :(得分:1)

首先使用','分割字符串:

dictionary = {}

with open("persons.dat", "r") as file:
    for line in file:
        items = line.split(',')
        dictionary[items[0]] = [int(x) for x in items[1:]]

print(dictionary)

答案 1 :(得分:1)

首先,您必须根据CcLinkingOutputs拆分行。

,

另外,items = line.split(',') 是管理collections.defaultdict个项目的更好选择。

list