【python】 os.path和glob中几个常用方法
博主最近在做毕业设计,python的使用频率直线上升,在使用过程中,也遇到各种坑,所以想主要是想记录一下经常使用到的一些方法,方便查阅~下面列举os.path中几个非常常用的方法:
- os.path.join()
- os.path.basename()
- glob.glob()
os.path.join()
该函数是对路径进行拼接,连接两个或者多个路径名,如果路径名的首字母不包含‘/’,则函数会自动加上,如果有一个路径是绝对路径,则在它之前所有的组件均会被舍弃,如果最后一个路径为空字符,则生成的路径以一个‘/’分隔符结尾。
测试代码:
import os
p1 = "python"
p2 = "learning"
p3 = "a.txt"
path0 = p1+p2+p3
path = os.path.join(p1, p2, p3)
print("+连接:",path0)
print("join连接:",path)
输出:
os.path.basename()
返回path最后的文件名。如果path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素。
测试代码:
import os
path0 = "E:\\python\\learning\\demo"
path = "E:\\python\\learning\\a.txt"
result0 = os.path.basename(path0)
result = os.path.basename(path)
print("文件夹结尾:",result0)
print("文件名结尾:",result)
结果:
glob.glob()
glob库是python的一个标准库,该模块主要是用作文件名匹配,不用遍历整个目录判断每个文件是否符合,特别快捷!glob.glob函数的参数是一个字符串,这个字符串类似于我们的正则表达式。下面举一个例子说明一下该函数的使用。
import glob
# 获取该目录下的所有以png为后缀名的图片
path = "E:\\python\\learning\\resource"
listpng = glob.glob(os.path.join(path, "*.png"))
输出是一个list的,list里面的每一个值都是一个路径,如:
listpng = ['E:\\python\\learning\\resource\\1.png',
'E:\\python\\learning\\resource\\2.png',
'E:\\python\\learning\\resource\\3.png',
'E:\\python\\learning\\resource\\4.png']
大概就是这样啦!词穷的理工科女,不会表达(哈哈哈)
参考文章:
https://www.cnblogs.com/an-ning0920/p/10037790.html