1
所以我试图创建一个函数,它将打开一个文本文件,逐行读取它,然后从它中获取数据以创建一个列表。Python:从文件创建一个列表
def file_open():
filename = str(input("enter file name for perk.py to sort through"))
fob = open(str(filename), 'r')
theList = []
for line in fob:
if not line:
break
x = fob.readline()
x = int(x)
theList.append(x)
print("List =", theList)
return theList
下面是我从提取数据的文本文件:
9
7
1
3
2
5
4
我的预期输出应该是:
List =[9,7,1,3,2,5,4]
然而,当我运行这个功能,我得到以下错误:
Traceback (most recent call last):
File "H:/CSCI-141/Week 7 Work/perk.py", line 47, in <module>
main()
File "H:/CSCI-141/Week 7 Work/perk.py", line 44, in main
perk_sort(file_open())
File "H:/CSCI-141/Week 7 Work/perk.py", line 17, in file_open
x = int(x)
ValueError: invalid literal for int() with base 10: ''
I w如果有人能告诉我为什么我得到这个错误,以及如何修复我的代码,我真的很感激它,谢谢!
我试过,但它返回 [ '9 \ n', '7 \ n', '1 \ n', '3 \ n',“2 \ n ','5 \ n','4 \ n'] – SirGoose 2014-10-02 01:46:47