【发布时间】:2018-05-13 16:53:29
【问题描述】:
我正在处理这段代码,它只是将新数据添加到文本文件中,我让它工作了,但是我再次运行它,它产生了错误“ValueError:没有足够的值来解包(预期 2,得到 1) ”。我知道这个错误意味着什么只是我似乎提供了两个值?我一定是漏掉了什么不对劲的地方?
产生错误的代码:
schoolnames=[]
scores=[]
with open("Cdrive.txt","r")as a_file:
for x in a_file.readlines():
data=x.strip() #Im aware i could just use data, but i use X to try fix the error, of course this didnt work
print(data)
school,score=data.split(",") #The error is produced here
schoolnames.append(school)
scores.append(score)
我的文本文件是这样的(文本文件中的每一位数据之间没有行):
sjp,15
切尔默,10
纽霍尔,20
【问题讨论】:
-
你能缩进你的代码吗?
-
听起来您的文件中某处有一个空行。
-
当我使用您提供的那三行代码时,您的代码运行良好。很可能您的文本文件中某处有一个空行。尝试打印循环索引和数据,以在出现错误之前跟踪您所在的行。
标签: python for-loop text-files