[英]recursively get all files except the hidden ones with pathlib
我想使用pathlib递归迭代给定路径的所有文件,除了那些隐藏或在隐藏目录中的文件。 例如,从
|
|- a.txt
|- .b.txt
|- a/
| |- c.txt
| |- .d.txt
| +- c/
| +- e.txt
|- .b/
+- f.txt
我想得到
a.txt
a/c.txt
a/c/e.txt
任何提示?
你可以这样做:
from pathlib import Path
def non_hidden_files(root):
for path in root.glob('*'):
if not path.name.startswith('.'):
if path.is_file():
yield str(path)
else:
yield from non_hidden_files(path)
print(*non_hidden_files(Path('.')))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.