将新行写入文件(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'
(写)。希望这是一个初学者的问题,而不是一个愚蠢的问题!谢谢:皮亚,我不会说哑巴