Python附加到文件

时间:2011-11-08 16:32:52

标签: python

while True:
    item = str(raw_input('Please enter the name of your item: '))
    f = open('sample.txt', 'a')
    f.write(item + '\n')
    f.close()

我的目标是让它继续向文本文档sample.txt添加项目。但是,每次运行程序时,附加的旧数据都会被写入...如何修复?为了澄清,我想在输入的每个项目的文本文档中有一个运行列表。谢谢!

2 个答案:

答案 0 :(得分:4)

with open('sample.txt', 'a') as f:
    while True:
        item = raw_input('Please enter the name of your item: ')
        if item == '':
            break
        f.write(item + '\n')

关键点:

  • 将项目写入文件,而不是字符串'item'
  • 关闭外面的文件 while循环
  • 提供一个'sentinel'对象以彻底打破循环(在这种情况下,点击输入而不输入任何内容)

答案 1 :(得分:0)

您正在编写字符串'item',而不是变量item的值。将您的写入通话更改为f.write(item + '\n')