将新行写入文件(Python 3)

将新行写入文件(Python 3),python,newline,file-writing,Python,Newline,File Writing,所以,在阅读了许多关于同一个问题被回答的例子之后,我仍然被卡住了。为什么此函数每次都不写新行 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应该在做这件事。我错过什么了吗 我正在运行Ubuntu15.04它应该一直在向文件中写入换行符,问题可能是您正在以w模式打开文件,这会导

所以,在阅读了许多关于同一个问题被回答的例子之后,我仍然被卡住了。为什么此函数每次都不写新行

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
应该在做这件事。我错过什么了吗


我正在运行Ubuntu15.04

它应该一直在向文件中写入换行符,问题可能是您正在以
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))

你使用了错误的模式。你需要使用,而不是
'w'
(写)。希望这是一个初学者的问题,而不是一个愚蠢的问题!谢谢:皮亚,我不会说哑巴