首页 > 解决方案 > 读取文件并将其转换为字典

问题描述

我有这个文本文件:

这是name_of_liquid(string)=amount(int)

liquid1=200

liquid2=20

liquid_X_= empty

liquid_3= 3000

现在,名称并不重要,但数量却很重要。它必须是一个整数。如果它是除 int 之外的任何其他类型,程序将引发异常

这是我的代码/伪代码:

#opening the file
d={}

try:
  dic = {}
  with open('accounts.txt') as f:
     for line in f:
        (key , val) = line.split()
        d[key] = int(val)
#except ValueError:
#    print('The value for', key,'is', value,' which is not a number!')

注释了 except 块,因为这是我的伪代码以及我计划如何处理错误,但是当我在不使用异常处理的情况下运行此代码时,我收到“没有足够的值来解包”的错误有人可以帮助我吗?

标签: python

解决方案


尝试这个

f = open("acounts.txt", "r")
dict = {}

try:
    for line in f:
        line = line.split("=")
        dict[line[0]] = int(line[1])
except:
print("Invalid value for key.")

推荐阅读