0

なぜこれはファイルに既にあるものを置き換えるのですか?どうすれば取得できますか? (json の代わりに .write .read を使用する必要がありますか?)

def load():
    with open("random_number_highscores.txt","r") as x:
        print (json.load(x))

def save(a):
    with open("random_number_highscores.txt", "w") as x:
        json.dump(a, x)
    print ("saved.")
4

2 に答える 2

1

これは、ファイルを「書き込み」モードで開くためです。書き込みモードでファイルを開くと、Python はファイル内に既にあるものをすべて上書きし、書き込みたい新しいコンテンツをファイルに追加します。代わりに、ファイルを「追加」モードで開き、ファイル内の既存のコンテンツにコンテンツを追加します。

例:

with open("file.txt","a") as file:
    file.write("This text was appended to the file")
于 2013-09-01T20:21:52.893 に答える
1

'w' (書き込み) フラグでファイルに書き込んでいます。'a' (追加) を試してください:

def save(a):
  with open("random_number_highscores.txt", "a") as x:
    json.dump(a, x)
  print ("saved.")
于 2013-09-01T20:17:47.587 に答える