python内置库--os.path

1 简单介绍

os.path模块提供了一系列函数,以便我们处理目录路径和文件
os.path常和os中其它函数一起配合使用,如

os.getcwd()

获取当前所在的目录
image

image

os.chdir()

如上getcwd()的例子中所示,用来切换目录
image

2 部分函数介绍

os.path.abspath(path)

对于path, 返回其在该系统的绝对路径

image

参数path为系统中真实存在的路径,也可以是.这样的符号,.表示当前目录,..是上一级目录
path还可以是 path-like object
image

新建一个py文件 路径是E:\py38venv\test_path.py,内容如下
image
执行结果
image

os.path.basename(path)

返回路径path中的最后一部分
image

os.path.commonprefix(list)

接受包含多个路径的 列表,返回所有路径的最长公共前缀(逐字符比较)。如果 列表 为空,则返回空字符串 ('')
image

os.path.dirname(path)

返回path中的目录部分,如果path表示的是一个文件路径的话,diname()返回的就是文件所处的目录
image

test_path.py
image
执行结果
image

os.path.exists(path)

判断path是否在系统中真实存在
对于失效的链接,返回 False
image

os.path.lexists(path)也是判断path是否存在,不同的是,对于失效的链接,返回True

os.path.getatime(path)

返回path的最后访问时间

os.path.getmtime

返回path的最后修改时间

os.path.getctime(path)

返回 path 在系统中的 ctime,在有些系统(比如 Unix)上,它是元数据的最后修改时间,其他系统(比如 Windows)上,它是 path 的创建时间
image

os.path.getsize(path)

返回 path 的大小,以字节为单位
image

os.path.isabs(path)

如果 path 是一个绝对路径,则返回 True。在 Unix 上,它就是以斜杠开头,而在 Windows 上,它可以是去掉驱动器号后以斜杠(或反斜杠)开头
image
注意,返回True,并不表示在系统上一定存在该路径

os.path.isfile(path)

path是真实存在与系统的且是文件,则返回True

image

os.path.isdir(path)

对应os.path.isfile(path)

os.path.islink(path)

path真是存在且指向一个链接则返回True

os.path.split(path)

返回一个元组(xx1,xx2),xx2为该path的最后一部分
image

os.path.splitext(path)

将 path 拆分为 (root, ext) 对使得 root + ext == path,并且扩展名 ext 为空或以句点打头并最多只包含一个句点
image

os.path.splitdrive(path)

将path拆分 (drive, tail),driver + tail == path
在win上,将把盘符及冒号拆分出来
image

path 以//开头 将会在第4个/处拆分
image

os.path.join(path, *paths)

将多个path拼接成一个path
image
注意,如果给出的path格式不对,拼接后仍然是错误的,os.path是不会预判处理的

其他的一些函数

os.path.relpath(path, start=os.curdir)
os.path.realpath(path, *, strict=False)
os.path.normcase(path)
等等等等

3 一些常用的用法

获取当前目录的上一级目录 或者上上级目录(如果确实存在)

image
执行结果
image

posted @ 2023-05-18 22:37  工作手记  阅读(108)  评论(0编辑  收藏  举报