用Python遍历目录树
Posted 中道学友
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Python遍历目录树相关的知识,希望对你有一定的参考价值。
代码如下:
import os path = ‘C:\tmp\2020-07-14‘ for folderName, subfolders, filenames in os.walk(path): print(‘The current folder is ‘ + folderName) for subfolder in subfolders: print(‘SUBFOLDER OF ‘ + folderName + ‘: ‘ + subfolder) for filename in filenames: print(‘FILE INSIDE ‘ + folderName + ‘: ‘+ filename) print(‘‘)
os.walk()函数被传入一个字符串值,即一个文件夹的路径。你可以在一个for循环语句中使用os.walk()函数,遍历目录树,就像使用range()函数遍历一个范围的数字一样。不像range(),os.walk()在循环的每次迭代中,返回3个值:
1.当前文件夹名称的字符串。
2.当前文件夹中子文件夹的字符串的列表。
3.当前文件夹中文件的字符串的列表。
所谓当前文件夹,是指for循环当前迭代的文件夹。程序的当前工作目录,不会因为os.walk()而改变。
就像你可以在代码for i in range(10):中选择变量名称i一样,你也可以选择前面列出来的3个字的变量名称。我通常使用foldername、subfolders和filenames。
因为os.walk()返回字符串的列表,保存在subfolder和filename变量中,所以你可以在它们自己的for循环中使用这些列表。用你自己定制的代码,取代print()函数调用(或者如果不需要,就删除for循环)。
参考资料
===============
《Python编程快速上手-让繁琐工作自动化》9.2 遍历目录树
!-->以上是关于用Python遍历目录树的主要内容,如果未能解决你的问题,请参考以下文章