python——glob模块

目录文件名查找模块。在查找路径中使用通配符,可以找到满足指定条件的所有文件路径名。

常用函数

该模块包括3个函数,glob用于一次性返回指定路径匹配的文件名;iglob和glob功能一样,同样查找匹配的文件名,但是返回对象是迭代器,即每次输出一个;escape在路径中选出*、?、[ 符号。

glob.glob(pathname, *, recursive=False)   ->   list
glob.iglob(pathname, *, recursive=False)  ->   iterator object 
glob.escape(pathname)

输入路径名支持通配符:

符号含义
*匹配0到多个字符
匹配1个字符
[a-z],[0-9]等表示范围,匹配1个字符
示例
glob
import glob
glob.glob('/root/data/test1/65*.csv')
#输出‘/root/data/test1/’目录下所有65开头的csv文件
"""
['/root/data/test1/65bbf6d7a405afa6348d.csv',
 '/root/data/test1/659a34281cc2fe85020e.csv',
 '/root/data/test1/65bc1c8c4975caff0964.csv',
 '/root/data/test1/65657f592decf6d14040.csv',
 '/root/data/test1/65f046177650d25f7b42.csv']
"""
glob.glob('/root/*/[0-9].*')
#返回列表包括root的所有子目录中所有以一个数字命名的各种类型文件

上文目录都是Linux系统下,Windows下目录格式不同,为了防转义,可以在字符串前加"r"
比如:r’C:\Users\USER\OneDrive\桌面*.txt’ 或 ‘C:\Users\USER\OneDrive\桌面\*.txt’

iglob
import glob
a=glob.iglob('/root/data/test1/65*.csv') 
#<generator object _iglob at 0x7f01d5820d00>
next(a)
#输出:'/root/data/test1/65bbf6d7a405afa6348d.csv'
next(a)
#输出:'/root/data/test1/659a34281cc2fe85020e.csv'
escape
import glob
glob.escape('C:\\Users\\USER\\One?riv[a-f]\\桌面\\*.pdf')
#输出:'C:\\Users\\USER\\One[?]riv[[]a-f]\\桌面\\[*].pdf'
#?*[三个符号会被[]所包括
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值