myFile = open('high scores.py', 'w')
if player1_total > player2_total :
myFile.write(player1_total)
else :
myFile.write(player2_total)
myFile.close
答案 0 :(得分:1)
文件write
方法仅需要字符串(或字节字符串,如果文件以二进制模式打开)。 max
函数也可以为您节省条件。尝试类似的东西:
with open('high_scores.py', 'w') as myFile:
myFile.write(str(max(player1_total, player2_total)))
然后您将可以通过阅读此内容
with open('high_scores.py') as f:
high_score = int(f.read())
请注意,使用with
语句可确保无论with
块的输出结果如何,文件始终正确关闭。
就个人而言,由于该文件不是Python程序文件,因此我将使用其他扩展名。要存储更大的一组值,请考虑使用shelve
模块。
答案 1 :(得分:0)
myFile = open('high scores.py', 'w')
if player1_total > player2_total :
myFile.write(str(player1_total))
else :
myFile.write(str(player2_total))
myFile.close()
问题是您需要在写入前将整数转换为字符串。最简单的方法是str(player2_total)
完成操作后也要关闭文件documentation
使用完文件后,请调用f.close()将其关闭并释放 打开文件占用的所有系统资源。
但这answer中给出了一种简洁的编写方法。
答案 2 :(得分:0)
在写入文件之前将您的值转换为字符串:
myFile.write(str(player1_total))