Python中的目录树列表
时间:2020-03-06 14:35:43 来源:igfitidea点击:
如何在Python的给定目录中获取所有文件(和目录)的列表?
解决方案
我们可以使用
os.listdir(path)
作为参考和更多的os函数,请看这里:
- Python 2文档:https://docs.python.org/2/library/os.html#os.listdir
- Python 3文档:https://docs.python.org/3/library/os.html#os.listdir
import os for filename in os.listdir("C:\temp"): print filename
试试这个:
import os for top, dirs, files in os.walk('./'): for nm in files: print os.path.join(top, nm)
这是遍历目录树中每个文件和目录的一种方式:
import os for dirname, dirnames, filenames in os.walk('.'): # print path to all subdirectories first. for subdirname in dirnames: print(os.path.join(dirname, subdirname)) # print path to all filenames. for filename in filenames: print(os.path.join(dirname, filename)) # Advanced usage: # editing the 'dirnames' list will stop os.walk() from recursing into there. if '.git' in dirnames: # don't go into any .git directories. dirnames.remove('.git')
这是我经常使用的辅助函数:
import os def listdir_fullpath(d): return [os.path.join(d, f) for f in os.listdir(d)]