我正在嘗試將以下數據讀入我的程序。ValueError預計2得到1 Python
Distance (m) Mass (kg)
0.0865 0.1
0.1015 0.15
0.4416 0.9
0.4304 0.95
0.437 1.0
我正在使用下面的代碼,這是直接出書。
def getData(fileName):
dataFile = open(fileName, 'r')
distances = []
masses = []
discardHeader = dataFile.readline()
for line in dataFile:
d, m = line.split(' ')
distances.append(float(d))
masses.append(float(m))
dataFile.close()
return (masses, distances)
代碼始終返回:
ValueError: not enough values to unpack (expected 2, got 1)
我看了其他ValueError異常項,在這裏和在網絡上,,涉及到閱讀空間分隔的數據到一個程序,但還沒有找到一個與實質上類似的問題。
我猜想問題是線路d, m = line.split(' ')
。我不確定這叫做什麼(複合賦值?元組賦值?),它爲什麼不起作用(我從來沒有嘗試過這種方式,但似乎是合理的),或者如何使它工作。如果有人以這種方式閱讀文件可以瞭解情況,那將不勝感激。
文件的其中一行中沒有空格。 – TigerhawkT3
嘗試在循環開始處添加'print(line)'來查看它在哪條線上失敗。 –
我懷疑「最後一行」以換行符結束。 – TigerhawkT3