Python 正在尝试减去从文件中检索到的值

Python 正在尝试减去从文件中检索到的值,python,arrays,file,object,integer,Python,Arrays,File,Object,Integer,我试图简单地通过参数y来改变一个特定账户的账户价值,参数y是被减去的价值。我不确定为什么会有错误,因为存储的值应该是正确的,但错误包括 错误: File "main.py", line 64, in withdraw if int(d.acc) >= int(y): ValueError: invalid literal for int() with base 10: '' 以下是文本文件: Name:Jose Gamez Birth Date:7/20/2

我试图简单地通过参数y来改变一个特定账户的账户价值,参数y是被减去的价值。我不确定为什么会有错误,因为存储的值应该是正确的,但错误包括

错误:

File "main.py", line 64, in withdraw
    if int(d.acc) >= int(y):
ValueError: invalid literal for int() with base 10: ''

以下是文本文件:

Name:Jose Gamez
Birth Date:7/20/2002
Address:Hong Kong, Tung Chung, Yun Tung, Block 33, Floor 10, Flat 9
HKID:C1357434
Account value:2234

Name:Viraj Ghuman
Birth Date:7/20/2002
Address:Hong Kong, Heng Fa Chuen, 100 Shing Tai Road, Block 22, Floor 20, Flat 1
HKID:C6969689
Account value:100000

有些帐户的帐户值似乎为空,您不能将空值强制转换为int。请在代码中检查:)

等等,但在我的txt文件中,所有帐户值都在0以上。@Justaude619 Python数组从0开始,只需在for循环中将1替换为0,就可以了。你的密码在,pastebin为我工作:
范围内的c(0,len(every_acc),6):
我猜你帐户中的空值来自你文件中的空行;)我明白你的意思,但我的文本文件的第一行是空白的,这就是为什么我从1开始。你尝试的输入是什么,以及文件的完整内容是什么?此外,如果你没有文件头,循环应该从
0
作为
范围(0,len(每_acc)进行迭代,6
输入x是HKID,因此它可以找到该HKID的帐户值,如C1357434。我相信我没有文件头。您应该会得到错误
update5=every_acc[c+4]。替换(“帐户值:,”).strip();IndexError:list index超出范围
如果当前代码没有标题,这很奇怪,实际上我没有收到任何类似的错误。
Name:Jose Gamez
Birth Date:7/20/2002
Address:Hong Kong, Tung Chung, Yun Tung, Block 33, Floor 10, Flat 9
HKID:C1357434
Account value:2234

Name:Viraj Ghuman
Birth Date:7/20/2002
Address:Hong Kong, Heng Fa Chuen, 100 Shing Tai Road, Block 22, Floor 20, Flat 1
HKID:C6969689
Account value:100000