我正在尝试从python中的文件中读取数字。该文件仅包含数字。 ALl号码是小数! 如上所述,这是文件内容: 25 4 2 6 7
我收到此错误:
Traceback (most recent call last):
File "readfile.py", line 18, in <module>
a.append(int(data[i]))
ValueError: invalid literal for int() with base 10: 'f'"
这是我的代码:
check=0
while(check!=1):
file=raw_input("Plase state the file name:")
print "\n"
try:
check=1
fo=open(file,"r",1)
except IOError:
print "NO such file or directory"
check=0
data=0
a=[]
i=0
for line in file:
data=line.split()
print data
a.append(int(data[i]))
i=i+1
print a
fo.close()
答案 0 :(得分:2)
你在做......
for line in file:
你应该做......
for line in fo:
循环文件名字符串不会帮助你。
此外,您需要修复数据列表上的迭代器i
。或者不是修复迭代器,而是可以list comprehension
:
a += [int(x) for x in data]
答案 1 :(得分:1)
如何分割内容并通过它循环。
with open('some_file','r') as fo:
content = fo.read().split(" ")
for num in content:
print num