遍历文件夹
把所有文件全部都找出来,包括所有文件夹下面的文件夹和文件
import os
for dirpath,dirnames,files in os.walk(‘./’):
print(f’发现文件夹:{dirpath}’)
print(files)
dirpath 是文件夹路径
dirnames是指定路径下这个文件夹下的子文件夹列表
files是指定路径下的文件列表
filenames和files测试是一样的结果
.startswith()和.endswith()
print(‘abc.txt’.startswith(‘ab’))
print(‘abc.txt’.endswith(‘.txt’))
判断文件是否以什么开头,或者文件是否以什么结尾
返回True或者False
import glob
print(glob.glob('*.py'))
查找所有以.py结尾的文件
返回的是完整的文件名
注意,这里的glob方法只会查找当前文件的路径层,不会遍历
这里*匹配所有字符,可以是多位的
也可以用?代替字符,但是?匹配的是任意的单个字符
可以使用??.py这样的形式,代表有2个字符名字的py文件
还可以使用中括号
比如demo[0-2].txt
打印了有demo0.txt demo1.txt demo2.txt
说明是0-2都包含
又或者demo[0,2].txt
只打印了demo0.txt和demo2.txt
或者在中括号中间加入!,代表除之外
比如demo[!0,2].txt
打印结果就是demo1.txt
如果想要遍历的话
print(glob.glob(‘**/*.txt’,recursive= True))
注意,True必须首字母要大写
否则会报错,recursive是循环的意思
import fnmatch print(fnmatch.fnmatch('demo1.txt','demo*'))判断demo1这个文件是否满足后面的查询条件
正确返回Ture 错误返回False