目标是确定扩展名,并根据目录中是否存在.LOG
文件来输出两个不同的文本文件。这是我到目前为止所拥有的。
fp = '/home/path/to/file'
for content in fp:
ext = os.path.splitext(content)[-1].upper() # splits root from extension
if ext != ".LOG":
with open(os.path.join('/home/path/to/file','Errorfile'),'w') as f:
f.write('.LOG file not found')
elif ext == '.LOG':
with open(os.path.join(/home/path/to/file' ,'Correctfile') , 'w') as T:
T.write('There is a .LOG file in directory)
该代码仅输出Errorfile
,并且没有执行f.write
行之后的任何代码。我的猜测可能是我构造条件语句的方式。任何帮助将不胜感激。
答案 0 :(得分:0)
您正在使用“ w”模式,导致每次文件都被覆盖。而是使用附加模式,以便将日志添加到文件中,而不是每次都覆盖它们:
fp = '/home/path/to/file'
for content in fp:
ext = os.path.splitext(content)[-1].upper() # splits root from extension
if ext != ".LOG":
with open(os.path.join('/home/path/to/file','Errorfile'),'a') as f:
f.write('.LOG file not found\n')
elif ext == '.LOG':
with open(os.path.join('/home/path/to/file' ,'Correctfile') , 'a') as T:
T.write('There is a .LOG file in directory\n')