【python】glob模块

2020-05-09  本文已影响0人  我写的BUG代码少
目录

glob模块

glob模块通配符

通配符 功能
* 匹配0或多个字符
** 匹配路径下 “所有文件的名字”及“所有子目录的文件夹名”(3.5版本新增)
匹配一个字符,这里与正则表达式? (正则?匹配前面表达式0次或者1次)
[] 匹配指定范围内的字符,如: [1-9]匹配1至9内的字符
[!] 匹配不在指定范围内的字符

操作

文件
import glob
glob.glob('path\\通配符')
'''
文件类型属于文件名的一部分
整体文件名 eg. 3.1.xlsx
'''

通配符 *


glob.glob('C:\\Users\\Cassie\\Desktop\\test\\*')
'''
或
glob.glob('C:\\Users\\Cassie\\Desktop\\test\\*.xlsx')
glob.glob('C:\\Users\\Cassie\\Desktop\\test\\3*')
'''
>>>
['C:\\Users\\Cassie\\Desktop\\test\\3.1.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.2.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.3.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.4.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.5.xlsx']

glob.glob('C:\\Users\\Cassie\\Desktop\\test\\*1*')
'''
或
glob.glob('C:\\Users\\Cassie\\Desktop\\test\\*1.xlsx')

'''
>>>
['C:\\Users\\Cassie\\Desktop\\test\\3.1.xlsx']

通配符 **

glob.glob('C:\\Users\\Cassie\\Desktop\\**')
>>>

['C:\\Users\\Cassie\\Desktop\\desktop.ini',
 'C:\\Users\\Cassie\\Desktop\\iterrows.jpg',
 'C:\\Users\\Cassie\\Desktop\\TEMP',
 'C:\\Users\\Cassie\\Desktop\\test',
 'C:\\Users\\Cassie\\Desktop\\在职证明.docx',
 'C:\\Users\\Cassie\\Desktop\\正则指引.pdf']
glob.glob('C:\\Users\\Cassie\\Desktop\\test\\**')  #路径+**
>>>
['C:\\Users\\Cassie\\Desktop\\test\\3.1.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.2.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.3.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.4.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.5.xlsx']

通配符 ?

glob.glob('C:\\Users\\Cassie\\Desktop\\test\\???.xlsx')
'''
或
glob.glob('C:\\Users\\Cassie\\Desktop\\test\\3.?.xlsx')
'''
>>>
['C:\\Users\\Cassie\\Desktop\\test\\3.1.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.2.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.3.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.4.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.5.xlsx']
glob.glob('C:\\Users\\Cassie\\Desktop\\test\\?.1.xlsx')
'''
glob.glob('C:\\Users\\Cassie\\Desktop\\test\\?.1*')

'''
>>>
['C:\\Users\\Cassie\\Desktop\\test\\3.1.xlsx']

通配符 []

glob.glob('C:\\Users\\Cassie\\Desktop\\test\\3.[1-3].xlsx')
'''
或
glob.glob('C:\\Users\\Cassie\\Desktop\\test\\*[1-3].xlsx')
'''
>>>
['C:\\Users\\Cassie\\Desktop\\test\\3.1.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.2.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.3.xlsx']

通配符 [!]

glob.glob('C:\\Users\\Cassie\\Desktop\\test\\*[!1-3].xlsx')
>>>
['C:\\Users\\Cassie\\Desktop\\test\\3.4.xlsx',
 'C:\\Users\\Cassie\\Desktop\\test\\3.5.xlsx']
上一篇下一篇

猜你喜欢

热点阅读