详情请去看这个文档
自己的见解
walk()函数提供了可以遍历整个文件夹的功能,也就是说可以处理可以帮助我们高效的处理文件、目录方面的事情。
这里面我举一个小例子帮助理解,首先在你的工作目录下新建一个name文件夹,然后在name文件夹下新建3个.txt文件,分别为1.txt,2.txt,3.txt。不知道为什么在jupyter notebook不显示,然而在spyder中显示结果。
例子1
import os
files = 'name'
for walk in os.walk(files):
print(walk)
结果
('name', [], ['1.txt', '2.txt', '3.txt'])
结果的3个值为别是代表下面的具体值
- root 所指的是当前正在遍历的这个文件夹的本身的地址
- dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)
- files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)
例子2
import os
files = 'name'
for walk in os.walk(files):
print(walk[2])
结果
['1.txt', '2.txt', '3.txt']
提供了可以操作里面文件。
例子3
可以新建一个yangli文件夹,然后在这个文件夹里面新建多个文件夹。这个多个文件夹里面可以有很多文件
import os
dir = './yangli/'
# count = 0
for parent, dirnames, filenames in os.walk(dir):
print(dirnames)
for filename in filenames:
print(filename)
fullpath = os.path.join(parent + '/', filename)
print(fullpath)
这里分享一个我经常用的代码,可以遍历一个文件里面的多个文件夹