我正在处理如下文件夹层次结构:
c:/users/rox/halogen/iodine/(some .txt files)
c:/users/rox/halogen/chlorine/(some .txt files)
c:/users/rox/inert/helium/(some .txt files)
c:/users/rox/inert/argon/(some .txt files)
现在我正在使用os.walk
遍历文件夹并处理文件
但问题是,如果我想在分析卤素下的所有子文件夹后生成分析输出到'卤素'文件夹那么我该怎么办...
我正在使用:
for root,dirs,files in os.walk(path,'*.txt):
.....
.......[processing file]
out.write(.....) # writing output in the folder which we are analyzing
但是如何将输出写入两步后面的文件夹(即卤素或惰性)..
答案 0 :(得分:2)
在步行前打开输出文件。
out = open(os.path.join(path, outputfilename), 'w')
然后走路处理输入
for root,dirs,files in os.walk(path,'*.txt):
.....
out.write(..)
这样您就已经知道了根路径。否则,如果你确定你的路径只是后退两步。
os.path.join(current_path, '..', '..')
将为您提供文件夹路径,向后两步
答案 1 :(得分:0)
您可以使用您正在处理的目录中的相对路径打开输出文件:
for root, dirs, files in os.walk(path, '*.txt'):
out = open(os.path.join(root, '..', '..'), 'a')
out.write(...)