os.path 子库,用来处理文件路径等信息
查看时可配合目录定位到相关函数。
import os.path
import os.path as op
返回当前文件绝对路径
os.path.abspath("exe101.py")
》》
'D:\\MathElectric\\python\\exe101.py'
返回一个带路径文件的文件名
os.path.basename("D:\MathElectric\python\exe101.py")
》》
'exe101.py'
返回 带路径 文件 除 文件名之外的路径部分
os.path.dirname("D:\MathElectric\python\exe101.py")
》》
'D:\\MathElectric\\python'
判断路径文件是否存在,返回 T F
os.path.exists("D:\MathElectric\python\exe101.py")
》》
True
获取文件或者路径的最近一次访问、修改、创建时间、文件大小:
返回的是计算机内部计时,import time 库,使用time.ctime转化为方便理解的时间形式
os.path.getatime(path)
获取上一次访问时间
os.path.getatime("D:\MathElectric\python\exe101.py")
>>
1542088133.0754445
time.ctime(os.path.getatime("D:\MathElectric\python\exe101.py"))
>>
'Tue Nov 13 13:48:53 2018'
os.path.getmtime(path)
获取最近一次修改时间
time.ctime(os.path.getmtime("D:\MathElectric\python\exe101.py"))
>>
'Sun Oct 7 11:04:50 2018'
os.path.getctime(path)
获取该文件的创建时间
time.ctime(os.path.getctime("D:\MathElectric\python\exe101.py"))
>>
'Sat Oct 6 15:22:53 2018'
os.path.getsize(path)
获取path文件得大小,单位为字节
os.path.getsize('D:\MathElectric\python\exe101.py')
>>
504
os.path.isabs(path)
判断 path 是否是绝对路径,返回 T F
os.path.isabs('D:\MathElectric\python\exe101.py') #是绝对路径
>>
True
os.path.isabs('exe101.py') #相对路径
>>
False
os.path.isfile(path)
判断 path 是否是一个已经存在的文件,如果是返回T 不存在返回 F
os.path.isfile('exe101.py') # 文件夹里有这个文件
>>
True
os.path.isfile('exe23333.py') #没有这个文件
>>
False
os.path.isdir(path)
判断 path 是否是一个已经存在的目录,如果是返回T 不存在返回 F
os.path.isdir('D:\MathElectric\python') #存在该文件夹
>>
True
os.path.isdir('D:\MathElectric\pythonAAAA') #不存在该文件夹
>>
False
组合两路径
有重复的绝对路径会被合并
os.path.join('D:\MathElectric\python','exe101.py')
>>
'D:\\MathElectric\\python\\exe101.py'
os.path.join('D:\MathElectric\python','\MathElectric\python','exe101.py')
>>
'D:\\MathElectric\\python\\exe101.py' #合并了
路径的标准化,将文件路径统一为 \ \分隔形式,
os.path.normpath("D://MathElectric\python")
》》
'D:\\MathElectric\\python'
os.path.normpath('c://windows\\System32\\../pypro/') #规范化路径
>>
'c:\\windows\\pypro'
转化路径中的大小写和 反斜杠为标准格式
os.path.normcase("D://MathElectric\pythonAA/")
>>
'd:\\\\mathelectric\\pythonaa\\'
返回当前程序和文件的相对路径
os.path.relpath(path,[start]) ,从 start 位置开始计算相对位置
os.path.relpath("D:\MathElectric\python\exe101.py","python")
》》
'..\\exe101.py'
返回当前程序和文件的真实路径
os.path.realpath("exe101.py")
>>
'D:\\MathElectric\\python\\exe101.py'
将文件路径切割,分为文件路径和文件名称,结果返回在元组里。
os.path.split("D:\MathElectric\python\exe101.py")
>>
('D:\\MathElectric\\python', 'exe101.py')
#splitdrive(path) 分割出磁盘和路径
os.path.splitdrive("D:\MathElectric\python\exe101.py")
>>
('D:', '\\MathElectric\\python\\exe101.py')
# splitext(path)分割出文件类型
os.path.splitext("D:\MathElectric\python\exe101.py")
>>
('D:\\MathElectric\\python\\exe101', '.py')
调用系统中的其他外部程序
path为要使用的外部程序exe的路径
os.system(path)
# 使用外部程序打开指定文件
os.system(exepath 空格 filepath)
取得或改变系统的软硬件环境参数
# 修改当前操作路径
os.chdir("D:")
# 获得当前路经
>>> import os
>>> os.getcwd()
'D:\\MathElectric\\python'
# 获得当前系统登录者名称
os.getlogin()
# 获得当前计算机cpu数量
os.cpu_count()