下面的代码行打开了一个名为document.txt的文档,看起来有点像这样。
3四五六六
3 2 8 9年
46个
with open('document.txt','r') as f:
for line in f:
farray = [int(i) for i in line.split(" ")]
lArray.append(farray)
但我有以下错误。
ValueError: invalid literal for int() with base 10: ''
这里有什么明显的我遗漏的东西吗?
Tags:
我猜文件的末尾有一个空行。当被剥离时,它将成为一个空字符串,不能被解析为int
删除空白行会使这项工作有效,但你可以把它看作是防御编程中的练习。正如我最喜欢的一位教授曾经告诉我的那样,“一个好的程序员是在穿过单行道之前,先看两边的人”。您可能需要替换行skip,这在python中是这样的
如果我是你,我的密码是:
我也经历过这个问题。你能做的最简单的事情就是
strip()
方法或replace()
方法。希望这能帮助你找到答案。
相关问题 更多 >
编程相关推荐