打印目录中的所有文件名

时间:2020-10-19 17:02:42

标签: python python-3.x list python-2.7

我想列出目录中的所有文件,所以我做了:

for (dirpath, dirnames, filenames) in os.walk(mypath):
    print(filenames)
    

为什么我们要使用三个变量而不仅仅是文件名变量?谢谢

1 个答案:

答案 0 :(得分:1)

os.walk返回一个生成器,该生成器创建一个值元组(current_path,current_path中的目录,current_path中的文件),因此我们在循环中使用3个变量来解压缩这些值。

每次调用生成器时,它都会递归地跟踪每个目录,直到调用walk的初始目录中没有其他子目录可用为止。

您可以查看以下python文档以获取os.walk: Python Docs