从具有多个值的txt文件添加到python3中的字典

时间:2015-09-13 21:56:17

标签: python dictionary

我一直在做的家庭作业。

我目前正在尝试读取txt文件:

  • firstname lastname 01 02 03
  • firstname lastname 01 02 03
  • firstname lastname 01 02 03
  • firstname lastname 01 02 03

然后将名称放在一起并添加数字。问题是我的代码现在的方式我“需要超过1个值来解包”(错误),我不知道目前如何做超过2个值。

fname = input("Enter the name of the file you want to open: ")
fo = open(fname, "r")

d = {}

for line in fo:
    (key, val) = line.strip().split(":")
    d[key] = int(value)

fo.close()

1 个答案:

答案 0 :(得分:0)

您可以在分配=之前简单地写两个以上的值。 每行有五个值,因此可以编写

fname, lname, val1, val2, val3 = line.strip().split(":")

但是你的错误"需要超过1个值才能打开"发出另一个问题:你只从split()中获得一个值并尝试将其放入两个变量中。您需要将调用":"中的.split()更改为分隔文件中列的字符。如果它是一个空格,则以下内容将起作用:

fname, lname, val1, val2, val3 = line.strip().split(" ")