我正在运行的循环将大约10000行写入文件。我一直在搜索,但找不到在写入语句中连接字符串或使用多个写入语句是否更有效。即:
f = open(fileName,"w+")
for item in list:
f.write(str1 + str2 + str3 + item + "\n\n")
或
f = open(fileName,"w+")
for item in list:
f.write(str1)
f.write(str2)
f.write(str3)
f.write(item)
f.write("\n\n")
第一个或第二个选项效率更高吗?
我想这以前曾被问过,我以一种奇怪的方式问这个问题,所以如果有人能指出我正确的方向,那就太好了!
答案 0 :(得分:2)
open
方法的默认行为,当未指定缓冲模式时,将遵循通常是行缓冲的系统默认值。这意味着Python会针对找到的每个换行将输出刷新到文件中(即执行写操作)。
因此,在此示例中,我认为,就文件IO性能而言,这两个操作是等效的,因为换行符是最后输出的内容。