我正在尝试从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()
最佳答案
你在做...
for line in file:
你应该做...
for line in fo:
循环播放文件名字符串将无济于事。
另外,您需要在数据列表上修复迭代器
i
。或者,您可以执行list comprehension
而不是固定迭代器:a += [int(x) for x in data]