我想排除目录“ dir3_txt”,以便只能files('.txt')
从其他目录捕获。我试图排除下面的目录,但无法弄清楚如何获取所有具有.txt的文件,以及dir3_txt
使用下面的文件:
for root, dirs, files in os.walk('.'):
print (root)
dirs[:] = [d for d in dirs if not d.startswith('dir3')]
for file in files:
print (os.path.join(root, file))
我正在考虑glob(从堆栈本身获取以下内容),但不确定如何调整glob以使用它。
for file in os.walk('.'):
for txt in glob(os.path.join(files[0], '*.txt')):
print(txt)
我经历了os.walk中的排除目录,但是提供的解决方案对我没有帮助,它仅说明跳过目录也无济于事,因为我需要从其他目录中获取文件,如果仅使用glob可以做到这一点更好?
一个简单的解决方案是对目录路径和由os.walk
以下命令返回的文件进行字符串比较:
for root, dirs, files in os.walk('.'):
if "/dir3_txt/" not in root:
for file in files:
if file.endswith(".txt"):
print (os.path.join(root, file))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句