我需要在目录中搜索所有盯着停机时间的文件,并在每个文件中添加一行。
现在我有以下内容:
os.chdir("/misc/downtimerecords")
for file in glob.glob("downtime*"):
fo=open("","a+")
fo.write("Network Cause")
fo.close()
如何更改此设置,以便无论目录中有多少文件都可以使用?目前,由于""
中的fo=open
,我会收到错误消息。我希望这是以停机时间开始的每个文件的名称。
答案 0 :(得分:0)
替换""在open()
file
。当您使用for循环迭代python中的列表时,for
之后的变量是您可以访问列表的当前元素的变量。
答案 1 :(得分:0)
更好的是:
stringvar = "string to append"
for filename in glob.glob("downtime*"):
with open(filename,"a+") as fo:
fo.write("Network Cause {}\n".format(stringvar))
...当file
遮蔽Python built-in
with open(...) as ... :
成语确保文件对象即使发生了令人讨厌的事情也会被关闭(而且它更整洁!)