将多个输入写入文本文件?

时间:2017-09-22 15:56:37

标签: python python-3.x

在文本文件中存储多个输入的最简单方法是什么,以便每次运行它时都会添加一个新单词?

randomlist = []
randominput = input()

randomlist.append(randominput)
randomlist.append(randominput)

with open("bleh.data", "w") as f:
    f.write(str(randomlist))
    print(randomlist)

这个例子只给了我第一个输入的副本。

编辑:似乎我错过了我写的“w”而不是“a”。我没有注意,它已经解决了。谢谢!

1 个答案:

答案 0 :(得分:0)

查看Python内置open()的文档:

  

最常用的模式值是'r'用于读取,'w'用于写入(如果文件已经存在则截断文件)和'a'用于追加(在某些Unix系统上表示所有写入都附加)无论当前的搜索位置如何,都到文件的末尾。

w标志打开要写入的文件,首先截断。您希望a不是w

替代方案,您可以使用os.lseek()。但是,在打开时指定w将始终先将文件截断为0,删除之前写过的内容。