【问题标题】:Write a new line to a file (Python 3)将新行写入文件(Python 3)
【发布时间】:2015-06-21 04:17:23
【问题描述】:

因此,在阅读了许多回答相同问题的实例之后,我仍然陷入困境。为什么这个函数不是每次都换行?:

def addp(wrd,pos):
    with open('/path/to/my/text/file', 'w') as text_file:
        text_file.write('{0} {1}\n'.format(wrd,pos))

看起来\n 应该可以解决问题。我错过了什么吗?

我正在运行 Ubuntu 15.04

【问题讨论】:

  • 您使用了错误的模式。你需要使用'a' (append),而不是'w'(写)。

标签: python newline file-writing


【解决方案1】:

它应该一直在向文件写入换行符,问题可能是您以w 模式打开文件,这会导致文件被覆盖,因此对于上述函数的每次调用它都会完全覆盖仅包含您发送的 wrd,pos 的文件,因此该文件仅包含一行。

您应该尝试使用a 模式,该模式用于附加到文件。

def addp(wrd,pos):
    with open('/path/to/my/text/file', 'a') as text_file:
        text_file.write('{0} {1}\n'.format(wrd,pos))

【讨论】:

  • 希望这是一个初学者的问题,而不是一个愚蠢的问题!谢谢:P
  • 是的,我不会说哑巴
猜你喜欢
  • 2017-06-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-09
  • 2013-03-02
  • 1970-01-01
  • 1970-01-01
  • 2011-02-03
相关资源
最近更新 更多