标题可能有些混乱,但是我没有其他办法可以解释它。我首先要从文件中导入乐谱,然后将它们按顺序排序,然后尝试以与导入时相同的方式将它们导出回我的文件,而不是作为列表。
Here's a little sketch:
Import as ' James 120 ' into list [James, 120]
Export as James 120
这是我到目前为止所拥有的:
def Leaderboard(User, Score):
Scores = open("Scores.txt", "r+")
content = Scores.readlines()
new = []
for i in content:
temp = []
newlist = i.split(" ")
temp.append(newlist[0])
temp.append(int(newlist[1]))
new.append(temp)
temp = []
temp.append(User)
temp.append(Score)
new.append(temp)
new = sorted(new, key=itemgetter(1), reverse=True)
print(new)
Scores.close()
Leaderboard('Hannah', 3333)
该文件当前如下所示:
Olly 150
Billy 290
Graham 320
James 2
Alex 333
这是最终结果:
[['Hannah', 3333], ['Alex', 333], ['Graham', 320], ['Billy', 290], ['Olly',
150], ['James', 2]]
这就是我想要将其导出到文件中的内容:
Hannah 3333
Alex 333
Graham 320
Billy 290
Olly 150
James 2
答案 0 :(得分:0)
您可以使用file.read()
,它将读取整个文件。我相信您可以运行contents = file.read()
,因为它以字符串形式返回。还有file.readlines()
返回一个字符串列表,每个字符串都是一行。
如果这不能完全回答您想要的内容,请阅读更多here。
答案 1 :(得分:0)
编写代码如下:
Scores.seek(0) # go to the beginning
for name, number in new:
print(name, number, file=Scores)