介绍
glob
的应用场景是要寻找一系列(符合特定规则)文件名。glob
模块是最简单的模块之一,内容非常少。用它可以查找符合特定规则的文件路径名。查找文件只用到三个匹配符:”*
”, “?
”, “[]
”。
- ”*”匹配0个或多个字符;
- ”?”匹配单个字符;
- ”[ ]”匹配指定范围内的字符,如:[0-9]匹配数字。
匹配所有文件和文件夹
for name in glob.glob('./*'):
print (name)
>>>
./search_file.py
./scapy_scripy
备注:可以相对匹配或绝对匹配
匹配所有文件夹下的文件或文件夹
for name in glob.glob('../*/*'):
print (name)
>>>
./scapy_scripy/__init__.py
./scapy_scripy/ping_scan.py
./scapy_scripy/ping_one.py
./scapy_scripy/__pycache__
用问号(?)匹配任何单个的字符
for name in glob.glob('dir/file?.txt'):
print (name)
>>>
dir/file1.txt
dir/file2.txt
dir/filea.txt
dir/fileb.txt
当需要匹配一个特定的字符,可以使用一个范围
for name in glob.glob('dir/*[0-9].*'):
print (name)
>>>
dir/file1.txt
dir/file2.txt