【发布时间】:2014-05-29 16:40:48
【问题描述】:
我定义了一个生成一些名称的函数并从循环中运行:
output = open('/tmp/NameGen-output.txt', 'w')
while True:
var = NameGen(name)
.
.
.
if sth:
output.write(var)
elif other:
output.write(var)
break
else:
break
output.close()
更新:
第一次迭代,NameGen-output.txt的内容:
a
b
c
第二次迭代:
a
b
c
d
e
等等
所以如果我覆盖它,第二次迭代将是:
d
e
我要问的是:
如您所见,var 等于 NameGen(),并且对于每次迭代,var 的内容都被写入 NameGen-output.txt,但我想将 NameGen() 的每次迭代的输出覆盖到 NameGen-output.txt,而不是附加到它。
你能帮帮我吗?
谢谢
【问题讨论】:
-
很难理解你想要完成什么,你能展示一些预期的输出吗?
-
很简单:该函数在每次迭代中生成名称,并将其写入该文件。对于下一次迭代,它有一些重复的名称,然后将它们附加到文件中,我想为每次迭代覆盖以解决该问题
-
好的,我更新了我的问题,谢谢
-
你使用中间文件吗?如果你不这样做(而且看起来不像你),你不能在退出循环后写吗?将临时变量保存在数组中,然后
files.writelines(thatarray) -
感谢您对您的评论 +1,但就我而言,我认为如果我不使用数组会更好。