python 笔记:glob (支持通配符的文件操作)

  • glob是python自己带的一个文件操作模块
  • 用它可以查找符合自己目的的文件,类似于Windows下的文件搜索
  • 支持通配符操作
    • *代表0个或多个字符
    • ?代表一个字符
    • []匹配指定范围内的字符,如[0-9]匹配数字。

1 glob 方法

  • 该方法返回所有匹配的文件路径列表(list)
  • 该方法需要一个参数用来指定匹配的路径字符串(字符串可以为绝对路径也可以为相对路径)
  • 其返回的文件名只包括当前目录里的文件名,不包括子文件夹里的文件。

1.1. 使用举例

比如我们桌面有一些png格式的文件

python 笔记:glob (支持通配符的文件操作)_第1张图片

import glob
glob.glob(r'C:\Users\16000\Desktop\*.png')
'''
['C:\\Users\\16000\\Desktop\\Figure_1.png',
 'C:\\Users\\16000\\Desktop\\Figure_2.png',
 'C:\\Users\\16000\\Desktop\\imputation visualization.png',
 'C:\\Users\\16000\\Desktop\\imputation_latex.png',
 'C:\\Users\\16000\\Desktop\\Official Review_TEMPLATE.png',
 'C:\\Users\\16000\\Desktop\\proj1.png',
 'C:\\Users\\16000\\Desktop\\proj2.png',
 'C:\\Users\\16000\\Desktop\\proj3.png',
 'C:\\Users\\16000\\Desktop\\proj4.png',
 'C:\\Users\\16000\\Desktop\\proj5.png',
 'C:\\Users\\16000\\Desktop\\proj6.png',
 'C:\\Users\\16000\\Desktop\\proj7.png']
'''
glob.glob(r'C:\Users\16000\Desktop\Figure*.png')
'''
['C:\\Users\\16000\\Desktop\\Figure_1.png',
 'C:\\Users\\16000\\Desktop\\Figure_2.png']
'''

2 iglob方法

获取一个迭代器( iterator )对象,使用它可以逐个获取匹配的文件路径名

glob.iglob(r'C:\Users\16000\Desktop\*.png')
#

for i in glob.iglob(r'C:\Users\16000\Desktop\*.png'):
    print(i)
    print('#'*10)
'''
C:\Users\16000\Desktop\Figure_1.png
##########
C:\Users\16000\Desktop\Figure_2.png
##########
C:\Users\16000\Desktop\imputation visualization.png
##########
C:\Users\16000\Desktop\imputation_latex.png
##########
C:\Users\16000\Desktop\Official Review_TEMPLATE.png
##########
C:\Users\16000\Desktop\proj1.png
##########
C:\Users\16000\Desktop\proj2.png
##########
C:\Users\16000\Desktop\proj3.png
##########
C:\Users\16000\Desktop\proj4.png
##########
C:\Users\16000\Desktop\proj5.png
##########
C:\Users\16000\Desktop\proj6.png
##########
C:\Users\16000\Desktop\proj7.png
##########
'''

你可能感兴趣的:(python库整理,python,开发语言)