count目录python中的文件数

avi*_*v p 4 python-2.7

以下语法用于获取我的目录中的文件数,但是请你帮我理解这个语法.(.next()[2]如何帮助我计算python.)我是python中的新手请帮帮我.

len(os.walk(path).next()[2])
Run Code Online (Sandbox Code Playgroud)

YOB*_*OBA 7

如果您想了解这种语法,我建议您按如下方式对其进行分解:

os.walk(path) 将返回一个生成器(基本上是一个迭代器)

<generator object walk at 0x7f5e5acbd4b0>
Run Code Online (Sandbox Code Playgroud)

os.walk应该浏览所有级别的目录,你要求next()获得第一级(而不是子目录)

os.walk(path).next()
Run Code Online (Sandbox Code Playgroud)

这将返回:

(
    [0] -> The path you passed
    [1] -> list of All the first level directories in your path
    [2] -> list of All the first level files
)
Run Code Online (Sandbox Code Playgroud)

为了获取文件,您将[2]在列表中询问索引元素

os.walk(path).next()[2]
Run Code Online (Sandbox Code Playgroud)

最后你可以计算这些元素的数量,你使用len(代表长度)

干得好:

len(os.walk(path).next()[2])
Run Code Online (Sandbox Code Playgroud)