os模块介绍
os模块提供了非常丰富的方法处理文件和目录
import os # 导入os模块
# 获取文件所在目录 D:\dev\ui_project\demo
print(os.getcwd())
# 获取[文件,目录]绝对路径 D:\dev\ui_project\demo\test.py
print(os.path.abspath(file_name))
# 判断[文件,文件夹]是否存在,存在返回True
print(os.path.exists(file_path))
# 判断文件[不含文件夹]是否存在,存在返回True
print(os.path.isfile(file_path))
# 判断目录是否存在,存在返回True
print(os.path.isdir(file_path))
# 返回绝对路径的文件名称 hosts
print(os.path.basename("C:\Windows\System32\drivers\etc\hosts"))
# 返回文件所在目录 C:\Windows\System32\drivers\etc
print(os.path.dirname("C:\Windows\System32\drivers\etc\hosts"))
# 返回一个元组;第一个元素为文件所在目录,第二个元素为文件名[含拓展名]
print(os.path.split("C:\Windows\System32\drivers\etc\hosts"))
# 返回一个元组,第一个元素为文件目录及文件名称,第二个元素为文件拓展名[拓展名包含.]
# ('C:\\Windows\\System32\\drivers\\etc\\hosts', '.ics')
print(os.path.splitext("C:\Windows\System32\drivers\etc\hosts.ics"))
# 拼接路径,适配windows[\]和linux[/]文件;os.path.join(*path);可以拼接多个路径
# C:\Windows\System32\drivers\etc\hosts
print(os.path.join("C:\Windows\System32\drivers\etc","hosts"))
# 获取文件或文件夹大小,单位字节
print(os.path.getsize(route))
# 修改文件或文件夹名称
os.rename(old_path,new_name)
# 返回一个列表,包含目录下所有文件
print(os.listdir(path="route"))
# 创建目录(不支持递归创建),指定权限,默认为777
os.mkdir(file_path,mode=777)
# 递归创建目录,默认权限为777
os.makedirs(file_path,mode=777)
# 删除目录[不支持递归],且删除目录必须为空,否则抛出异常[OSError]
os.rmdir(file_path)
# 递归删除目录,且删除目录必须为空,否则抛出异常[OSError],与rmdir不同;removedirs会逐次删除上级目录,知道遇到不为空目录
os.removedirs(file_path)
# 删除文件
os.remove(file_name)
# 设置环境变量;获取环境变量[dict类型],返回str类型
os.environ["key"]="value"
print(os.environ)
print(os.environ.get("JAVA_HOME"))
# 获取环境变量,返回str
os.getenv("key")
# 获取环境变量,返回list
print(os.get_exec_path())
# 向终端执行命令
os.system("dir")
# 向终端执行命令,返回一个对象
print(os.popen("dir").read())
# 获取操作系统类型
# nt Windows
# posix linux
# java java虚拟机
print(os.name)
# 显示系统分隔符
print(os.sep)
# \ windows
# / linux