注:本文所有代码均经过Python 3.7实际运行检验,保证其严谨性。
os库是Python标准库,包含几百个函数。它能处理与系统相关的常用路径操作、进程管理、环境参数等。
今天要介绍的os.path库是os库的一个子库,专门用于处理文件路径及信息。
路径
os.path子库以path为入口,用于操作和处理文件路径。跟以前学过的标准库使用方法一样,使用之前要先import该库:
import os.path
以下代码实例均默认已import os.path。
os.path.abspath(path)——返回path在当前系统的绝对路径。
print(os.path.abspath("output.txt"))<<<C:\Users\xxx\output.txt
os.path.normpath(path)——归一化path的表现形式,统一用单反斜杠\\(两个反斜杠)分隔路径。
print(os.path.normpath("C:\\Users\\xxx\\output.txt"))<<<C:\Users\xxx\output.txt
os.path.relpath(path)——返回当前程序与文件之间的相对于源程序所在的路径,也就是相对路径(relative path)。
print(os.path.relpath("C:/Users/xxx/output.txt"))<<<output.txt
os.path.dirname(path)——返回path中的目录名称。dir是directory目录的简写。
print(os.path.dirname("output.txt"))print(os.path.dirname("C:\\Users\\xxx\\output.txt"))<<< # 使用相对路径时,返回的目录为空C:\Users\xxx<<<
os.path.dirname(path)——返回path中最后的文件名称。
print(os.path.basename("C:\\Users\\xxx\\output.txt"))<<<output.txt
os.path.join(path, *paths)——组合path与paths,返回一个路径字符串。
print(os.path.join("C://", "users//", "documents//output.txt"))<<<C://users//documents//output.txt
os.path.exists(path)——判断path对应的文件或目录是否存在,返回True或False。
print(os.path.exists("C:users/documents//output.txt"))print(os.path.exists("C:\\Users\\xxx\\output.txt"))<<<FalseTrue<<<
os.path.isfile(path)——判断path所对应的文件是否存在,返回True或False。
os.paht.isdir(path)——判断path所对应的目录是否存在,返回True或False。
print(os.path.isfile("C:users/documents//output.txt"))print(os.path.isfile("C:\\Users\\xxx\\output.txt"))print(os.path.isdir("C:\\Users\\xxx\\output.txt"))<<<False # 对应文件并不存在True # 对应文件存在False # 对应文件存在,但这个路径对应的是文件,而不是目录,所以False<<<
os.path.getatime(path)——返回path对应文件或目录上一次的访问时间。
os.path.getmtime(path)——返回path对应文件或目录最近一次的修改时间。
os.path.getctime(path)——返回path对应文件或目录的创建时间。
import time #因为以下涉及到time库的使用。print(os.path.getatime("C:\\Users\\xxx\\output.txt"))print(os.path.getmtime("C:\\Users\\xxx\\output.txt"))print(time.ctime(os.path.getctime("C:\\Users\\xxx\\output.txt")))<<<1579181558.7048829 # 返回path对应文件或目录上一次的访问时间。1579181558.7048829 # 返回path对应文件或目录最近一次的修改时间。Thu Jan 16 21:32:38 2020 # 返回path对应文件或目录的创建时间。<<<
os.path.getsize(path)——返回path对应文件的大小,以字节为单位。
print(os.path.getsize("C:\\Users\\xxx\\words.txt"))<<<475954 # 单位是字节。
To be continued.