从txt列表创建数组

时间:2014-06-22 13:38:03

标签: python

我想从文件中删除分数并将它们排列在有序列表中,我可以打印出第1,第2和第3位,这是我的代码:

scores = []
result_f = open("results.txt")
for line in result_f:
    (name, score) = line.split()
    scores.append = (float(score))
result_f.close()
print("The highest scores were: ")
print(score[0])
print(score[1])
print(score[2])

控制台错误python给出的是:

文件" C:\ Python34 \ surfingscores.py",第5行,in     scores.append =(浮点数(得分)) AttributeError:' list'对象属性'追加'是只读的

3 个答案:

答案 0 :(得分:2)

scores.append是一个功能。而不是使用

scores.append = float(score)

尝试使用

scores.append = float(score)

或者

scores[len(scores):] = float(score)

答案 1 :(得分:1)

你需要

scores.append(float(score))

目前,您正在尝试一个浮点值分配给append列表的属性scores,这不是您想要的。抛出错误是因为append列表的scores属性(附加到该列表的函数)是只读的,因此明确地保护其不受当前代码的影响。

>>> scores = []
>>> scores.append
<built-in method append of list object at 0x7f08964f9638>

答案 2 :(得分:1)

scores.append是分数的函数/方法。

您需要进行函数调用。

scores.append(float(score))