現在,我正在制作一個簡單的游戲,并試圖記錄一個高分并在游戲打開時保存它。我有一個檔案,best_score.txt在打開時檢索高分,如果score == best在整個游戲程序中,我希望將當前分數保存在該檔案中。唯一的文字best_score.txt是分數。
目前,檔案被打開并讀取如下:
with open("best_score.txt", "r") as f:
best = int(f.read())
old_best = best
高分( best) 是從檔案中提取的,我old_best保存了高分( )的第二個副本以備后用。
在游戲程序中,如果有人擊敗了他們的高分,best將被設定為等于他們的分數上升。
一旦他們重新啟動或關閉游戲,如果score == best此代碼運行:
with open("best_score.txt", "w") as f:
f.write(f.replace(str(old_best), str(best)))
這是為了在游戲開始時搜索原始高分(old_best)并將其替換為新的高分。現在,當我運行游戲并擊敗高分時,新的沒有被記錄。文本檔案只是變成空的,里面沒有任何文本,或者它仍然是以前的高分。我做錯了什么,或者我可以做些什么來將樂譜保存在文本檔案中?
我知道有類似的問題在這里就如何解釋和寫入文本上其他網站,但我不能讓我的作業。這是我在編程方面的第一個“大”專案(100 多行),這是唯一真正讓我難堪的事情。任何幫助將不勝感激。
uj5u.com熱心網友回復:
你把它復雜化了:
with open("best_score.txt", "w") as f:
f.write(best)
這將用新文本覆寫文本。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/334146.html
