【发布时间】:2015-07-29 06:33:18
【问题描述】:
我一直在尝试创建一个函数 a 使用 os.walk 遍历目录树并创建一个以文件夹命名的文本文件,并且仅在源文件夹中有数据文件时才创建文本文件并将文件附加到该txt文件。它实际上是在另一个映射的网络驱动器上备份数据文件
def copy_from_dest(src, dest):
os.chdir(src)
for root, dirs, files in os.walk(".",topdown=True):
for name in dirs:
newdir = (os.path.join(root, name))
os.chdir(newdir)
filenames = glob.glob('*.txt')
if len(filenames) > 1:
for fname in filenames:
add_to_file(src + newdir, fname, dest + newdir, newdir + "_data.txt")
os.chdir(src)
add_to_file 是一个将文件附加到文本文件并随后删除的函数。我面临的问题是目录的第一个分支完美地工作,第二个分支(或子目录的子目录)在第二个分支或第二步中创建文件,而它应该在第三个中创建。
例如:
-
Root/文件夹工作正常 -
Root/folderstep1工作正常 -
Root/folderstep1/folderstep2/folderstep3将txt文件错误写入folderstep2
请问有人可以帮忙吗?提前致谢!
【问题讨论】: