为什么这个文件被保存了? fileI / O python3

时间:2013-09-01 20:10:34

标签: file-io python-3.x

为什么这会替换文件中已有的内容,我怎么能这样做呢。 (我应该使用.write .read而不是json吗?)

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.")

2 个答案:

答案 0 :(得分:1)

您正在使用'w'(写入)标记写入文件,尝试'a'(追加):

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

答案 1 :(得分:1)

原因是您以“写入”模式打开文件。在写入模式下打开文件时,Python将覆盖文件中已有的所有内容,并将要写入的新内容添加到文件中。而是以“追加”模式打开文件,将内容添加到文件中已存在的内容中。

示例:

with open("file.txt","a") as file:
    file.write("This text was appended to the file")