我可以使用.writelines()将单行写入文件吗?

时间:2016-04-26 10:16:48

标签: python string file line

来自file.writelines()上的文档:

  

将一串字符串写入文件。序列可以是任何序列   可迭代对象生成字符串,通常是字符串列表。

但是,编写单行也有效:

>>> with open("/tmp/test", "w") as f:
...     f.writelines("test\n")
... 
>>> with open("/tmp/test") as f:
...     f.readlines()
... 
['test\n']

所以我想知道.writelines()是否可以接受单个字符串以及字符串序列。任何指向python 3文档的链接都将不胜感激。

1 个答案:

答案 0 :(得分:4)

那是因为Python中的字符串是可迭代的:

>>>> for char in 'test':
....     print(char)
....
t
e
s
t

因此,此代码将您的字符串视为可迭代,并在char之后附加到文件char。它可能不如使用.write()那么高效。