glob path(python库)

glob

这里有两种方法导入glob

mport glob #导入整个glob模块

from glob import golb #从glob模块导入glob函数

三种通配符

  • *代表0个或多个字符
  • ?代表一个字符
  • \[\]匹配指定范围内的字符,如0-9匹配数字
python 复制代码
#1、定义一个函数,搜索C盘下的所有文件和目录,并返回一个列表(这里使用import glob)
 
import glob
 
def search():
    f = glob.glob(r'c:\*')#glob.glob表示glob模块下的glob函数
    print(f)
 
if __name__ == "__main__":
    search()

#2、定义一个函数查询E盘中以.exe结尾的文件有哪些(这里使用from glob import glob):
 
from glob import glob#导入模块的同名函数
 
def search():
    f = glob(r'e:\*.exe')#直接调用函数
        for i in f:
            print(i)
if __name__ == "__main__":
    search()

glob.iglob() 函数

python 复制代码
import glob
# 父目录中的.py文件
f = glob.iglob(r'../*.py')
print(f)      # generator object iglob as 0x00B9FF80
for py in f:
    print(py)

获取一个可遍历对象,使用它可以逐个获取匹配的文件路径名。

与glob.glob()的区别是:glob.glob()可同时获取所有的匹配路径,而glob.iglob()一次只能获取一个匹配路径。

Path

python 复制代码
from pathlib import Path
1.提取文件名
path_str = Path(r"/usr/HinGwenWoong/demo.py")
path_file_name = path_str.name
print(path_file_name)
#demo.py
2.提取父文件路径
方法名 : .parent
path_str = Path(r"/usr/HinGwenWoong/demo.py")
path_parent_path = path_str.parent
print(path_parent_path)
#\user\HinGwenWoong
11.glob
方法名 : .glob
from pathlib import Path

path_str = Path(r"/user/HinGwenWoong/scripts")
print(path_str.glob('*.py'))
#[PosixPath('/user/HinGwenWoong/scripts/demo_1.py'), 
#PosixPath('/user/HinGwenWoong/scripts/demo_2.py')]

3.提取文件后缀
方法名 : .suffix
4.更改文件后缀
方法名 : .with_suffix
5.提取无后缀的文件名
方法名 : .stem
6.遍历文件
方法名 : .iterdir()
7.组合文件路径
方法名 : .joinpath
8.是否绝对路径
方法名 : is_absolute()
9.是否文件夹 or 文件
方法名 : is_dir()、 is_file()
10.是否存在
方法名 : .exists()
相关推荐
weixin199701080161 小时前
《二手ERP对接闲鱼API:聚石塔强制入塔后的架构重构实录》(附Python源码)
python
小白快快跑哦1 小时前
python-字符串全解(六):正则表达式-转义与非转义
python·正则表达式·转义与非转义
晴天的雨.9922 小时前
【C++算法】和为s的两个数
开发语言·数据结构·c++·算法
IvanCodes7 小时前
Python 数据处理(十三):JSON、CSV 与数据序列化
开发语言·python
Patrick在香港8 小时前
Claude 工具调用返回空:8 次失败里只有 1 次状态码不对,其余全带 200
爬虫·python·api·claude·香港
Web3&Basketball8 小时前
CRM Agent 后训练实战:3 倍更少错误
python·架构·大模型·agent·推理
aramae9 小时前
MySQL复合查询(8)
java·c语言·开发语言·后端·算法
AIFQuant9 小时前
ETF行情API接入踩坑记:从报错到跑通的七个问题
python·金融·区块链·etf·基金
GPU实战笔记10 小时前
云端 Python 开发:JupyterLab 还是 VS Code Remote-SSH?
python·vs code·jupyterlab·remote-ssh·远程开发
狗狗狗狗狗乐啊11 小时前
搭一个 AI 对话工作台 AChat:从 0 到可用的完整记录(一)
python·react.js·ai编程