目录
os模块概述
- os模块是Python内置的与操作系统功能和文件系统相关的模块,该模块中的语句的执行结果通常与操作系统有关,在不同的操作系统上运行,得到的结果可能不一样
- os模块与os.path模块用于对目录或文件进行操作
前提:在使用函数之前需先导入os函数
调用系统文件或程序
# os模块与操作系统相关的一个模块,可以调用系统文件或应用程序
import os
print(os.system("notepad.exe"))
print(os.system("calc.exe"))
print(os.system('cmd'))
直接调用可执行文件
# 直接调用可执行文件(如:打开网易云音乐)
print(os.startfile('F:\\CloudMusic\\cloudmusic.exe'))
当前使用平台
# 返回当前使用平台的代表字符,Windows用'nt'表示,Linux用'posix'表示
print(os.name)
os模块操作目录相关函数
函数 | 使用说明 |
---|---|
getcwd() | 返回当前的工作目录 |
listdir(path) | 返回指定路径下的文件和目录信息 |
mkdir(path[,mode]) | 创建目录 |
makedirs(path1/path2…[,mode]) | 创建多级目录 |
rmdir(path) | 删除目录 |
removedirs(path1/path2…) | 删除多级目录 |
chdir(path) | 将path设置为当前工作目录 |
当前路径和文件
# 返回当前工作目录
print(os.getcwd())
# 返回stusystem目录下所有文件列表
print(os.listdir('../stusystem'))
执行以上程序输出结果为 :
创建目录
#创建path目录(只能创建一级目录,如'F:\XXX\WWW'),在XXX目录下创建WWW目录
os.mkdir(path)
#创建多级目录(如'F:\XXX\SSS'),在F盘下创建XXX目录,继续在XXX目录下创建SSS目录
os.makedirs(path)
删除文件或目录
#删除文件(必须是文件)
os.remove(path)
#删除path目录(只能删除一级目录,如'F:\XXX\SSS'),只删除SSS目录
os.rmdir(path)
#删除多级目录(如'F:\XXX\SSS'),必须为空目录,删除SSS、FFF目录
os.removedirs(path)
更改路径
#将当前工作目录更改为指定路径path
os.chdir(path)
os.path() 模块
函数 | 使用方法 |
---|---|
abspath(path) | 用于获取文件或目录的绝对路径 |
exists(path) | 用于判断文件或目录是否存在,如果存在返回True,否则返回False |
join(path,name) | 将目录与目录或者文件名拼接起来 |
split(path) | 把路径分割成 dirname 和 basename,返回一个元组 |
splitext() | 分离文件名和扩展名 |
basename(path) | 从一个目录中提取文件名 |
dirname(path) | 从一个路径中提取文件路径,不包含文件名 |
isdir(path) | 用于判断路径是否为目录 |
isfile(path) | 用于判断路径是否为文件 |
split(path) | 把路径分割成 dirname 和 basename,返回一个元组 |
绝对路径
#返回path的绝对路径
os.path.abspath(path)
查看文件
#判断path是否存在,存在返回True,不存在返回False
os.path.exists(path)
#判断path是否为文件,是返回True,不是返回False
os.path.isfile(path)
#判断path是否目录,是返回True,不是返回False
os.path.isdir(path)
查看文件名或目录
# 将path的目录和文件名分开为元组
os.path.split(path)
# 将path1,怕path2,...进行组合,若path2为绝对路径,则会将path1删除
os.path.join(path1,path2,...)
#返回path中的目录(文件夹部分),结果不包含'\'
os.path.dirname(path)
#返回path中的文件名
os.path.basename(path)
文件名分离
# 分割文件名与路径,返回(f_path, f_name)元组。如果完全使用目录,它也会将最后一个目录作为文件名分离,且不会判断文件或者目录是否存在
split(path)
# 分离文件名与扩展名,返回(f_name, f_extension)元组
splitext(path)
查看文件时间
# 返回文件或目录的最后修改时间,结果为秒数
os.path.getmtime(path)
# 返回文件或目录的最后访问时间,结果为秒数
os.path.getatime(path)
# 返回文件或目录得创建时间,结果为秒数
os.path.getctime(path)
查看文件大小
#返回文件的大小,若是目录则返回0
os.path.getsize(path)