今天碰到了一个非常有意思的python特性。本来我是想打开一个文件,在文件的末尾接下去输入一些内容的,代码如下:
f = open('test.txt', 'r+')f.write(content)f.close()
结果发现无论我写什么东西,content的内容总是会从文件开头写入,并且覆盖掉原来的内容。查了官方文档,也不知道应该怎么做。
但偶然间我发现了接到末尾写入的方法,代码如下:
f = open('test.txt', 'r+')f.read()f.write(content)f.close()
没错,只是添加了一行f.read(),之后你的write函数就会自动接到末尾进行写入了。去翻了下官方文档,貌似没有提及这个。
read
(size)Read and return at most size characters from the stream as a single . If size is negative or
None
, reads until EOF.
write
(s)Write the string s to the stream and return the number of characters written.