如何解决使用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('.')))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。