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()
相关推荐
Warson_L13 小时前
Python `Annotated` 与 LangGraph Reducer 学习笔记
python
韩师傅13 小时前
海天线算法的前世今生
python·计算机视觉
韩师傅13 小时前
当你的甲方设备过烂,要如何快速出效果?
python·计算机视觉
Warson_L13 小时前
LangGraph的MessageState and HumanMessage
python
韩师傅14 小时前
当你的甲方吐槽天空不够蓝,你应该如何应对
python·计算机视觉
Warson_L14 小时前
python的类&继承
python
Warson_L14 小时前
类型标注/type annotation
python
ThreeS16 小时前
手搓MiniVLA全实战教程-一步一步用pytorch解释原理与思路
人工智能·python
金銀銅鐵18 小时前
[Python] 模 n 乘法的逆元计算器
python·数学·游戏