扫描目录以列出所有文件的名称

我有一个大文件夹,其中有很多子文件夹。每个子文件夹中还可以包含一些子文件夹(数量可以不同)。这在某些层面上持续存在。最后,有一个文本文件。如何制作一个 python 程序,尽可能深入地遍历整个目录并打印文本文件的名称?简单来说,我想在目录中导航,只要没有更多的子目录?



慕丝7291255
浏览 96回答 1
1回答

慕哥6287543

使用os.walk。例如,创建一个像这样的深层层次结构$ mkdir -p a/b/c/d/e/f/g$ touch a/b/c/d/e/f/g/h.txt和跑步import osfor dirname, dirnames, filenames in os.walk('.'):    for filename in filenames:         filepath = os.path.join(dirname, filename)         print(filepath)产量./a/b/c/d/e/f/g/h.txt– 做你想做的事filepath。如果您使用的是 Python 3.5 或更高版本(您可能应该使用),另一种选择是glob.glob()使用递归模式:>>> print(glob.glob("./**/*.txt", recursive=True))['./a/b/c/d/e/f/g/h.txt']
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python