glob path(python库)

glob

这里有两种方法导入glob

mport glob #导入整个glob模块

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

三种通配符

  • *代表0个或多个字符
  • ?代表一个字符
  • \]匹配指定范围内的字符,如\[0-9\]匹配数字

#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()
相关推荐
努力也学不会java几秒前
【Java并发】深入理解synchronized
java·开发语言·人工智能·juc
2401_831501739 分钟前
Python学习之Day07-08学习(Django网页Web开发)
python·学习·django
星竹晨L17 分钟前
【C++】深入理解list底层:list的模拟实现
开发语言·c++
Tiny番茄23 分钟前
leetcode 3. 无重复字符的最长子串
数据结构·python·算法·leetcode
豐儀麟阁贵28 分钟前
Java知识点储备
java·开发语言
豐儀麟阁贵37 分钟前
2.3变量与常量
java·开发语言
胡斌附体39 分钟前
离线docker安装jupyter(python网页版编辑器)
python·docker·jupyter·image·tar·save
java1234_小锋2 小时前
TensorFlow2 Python深度学习 - TensorFlow2框架入门 - 使用Keras实现逻辑回归
python·深度学习·tensorflow·tensorflow2
java1234_小锋2 小时前
TensorFlow2 Python深度学习 - TensorFlow2框架入门 - Sequential顺序模型
python·深度学习·tensorflow·tensorflow2
什么半岛铁盒2 小时前
C++11 多线程与并发编程
c语言·开发语言·c++