Python 内置库
内置库OS
主流操作系统有Windows、Unix、Mac os,为屏蔽系统差异性,Os库提供通用的、基本的与操作系统相关的操作,主要分为3大模块: 操作系统相关、目录操作、路径操作
系统相关操作
-
os.name:获取系统名称
返回结果posix , nt , java, 分别对应linux/windows/java虚拟机
>>> os.name 'nt' # nt对应的操作系统是windows
-
os.environ:获取系统环境变量信息
>>> os.environ environ({'ALLUSERSPROFILE': 'C:\\ProgramData', 'APPDATA'... # 所有的环境变量
-
os.getenv(‘PATH’):获取指定名称的环境变量信息
>>> os.getenv('PATH') # 获取环境变量 'D:\\Programs\\Python\\Python38-32\\Scripts\\;...' # PATH路径
-
os.system():执行系统指令,执行成功返回 0,不返回具体的命令执行结果
-
os.popen(): 执行命令,并返回执行后的信息对象,通过read()方法可以看到执行的输出
# 执行系统命令 print("os.system执行系统命令,查看git版本:%s" % os.system('git version')) print("os.popen执行系统命令,查看git版本:%s" % os.popen('git version').read())
输出:
os.system 执行系统命令,查看git版本:0 os.popen 执行系统命令,查看git版本:git version 2.40.1.windows.1
ps: 每一次执行命令时,会在系统上创建一个子进程执行命令,因此对于多条命令的执行可能不会成功,此时需要:``
目录相关
- os.getcwd():获取当前目录
- os.chdir():切换目录
- os.listdir():列出当前目录内容
- os.mkdir():创建空目录
- os.makedirs():递归创建多级目录
- os.rmdir():删除空目录
- os.rename():重命名目录
- os.remove():删除文件
路径相关
path 方法 | 说明 |
---|---|
os.path.abspath(path) | 返回绝对路径 |
os.path.basename(path) | 返回文件名 |
os.path.dirname(path) | 返回文件路径 |
os.path.split(path) | 分割路径 |
os.path.join(path) | 拼接路径 |
os.path.exists(path) | 判断路径是否存在 |
os.path.isdir(path) | 判断是否是目录 |
os.path.isfile(path) | 判断是否是文件 |
os.path.getsize(path) | 获取文件大小 |
# 返回绝对路径
print(os.path.abspath("./os_demo.py"))
# 返回文件名
print(os.path.basename("/Users/xiaofo/coding/pythonProject/course/os_demo.py"))
# 返回文件路径
print(os.path.dirname("/Users/xiaofo/coding/pythonProject/course/os_demo.py"))
# 分割路径
print(os.path.split("/Users/xiaofo/coding/pythonProject/course/os_demo.py"))
# 拼接路径
print(os.path.join("/Users/xiaofo/coding/pythonProject/course", "os_demo.py"))
# 判断路径是否存在
print(os.path.exists("/Users/xiaofo/coding/pythonProject/course/os_demo.py"))
print(os.path.exists("./os_demo.py"))
# 判断是否是目录
print(os.path.isdir("../demos"))
# 判断是否是文件
print(os.path.isfile("./hello.py"))
# 获取文件大小
print(os.path.getsize("/Users/xiaofo/coding/pythonProject/course/os_demo.py"))
import os
print('获取dem.py文件的绝对路径:', os.path.abspath('demo.py'))
print('获取文件名:', os.path.basename(r'E:\code\demo\demo.py'))
print('获取文件里路径:', os.path.dirname(r'E:\code\demo\demo.py'))
print('分割路径:', os.path.split(r'E:\code\demo\demo.py'))
print('拼接路径: ', os.path.join(r'E:\code\demo', 'demo.py'))
print('判断路径是否存在: ', os.path.exists(r'E:\code\demo\demo.py'))
print('判断是否为目录: ', os.path.isdir(r'E:\code\demo'))
print('判断是否为文件: ', os.path.isfile(r'E:\code\demo'))
print('获取文件的大小: ', os.path.getsize(r'E:\code\demo\demo.py'))
输出:
获取dem.py文件的绝对路径: E:\code\demo\demo.py
获取文件名: demo.py
获取文件里路径: E:\code\demo
分割路径: ('E:\\code\\demo', 'demo.py')
拼接路径: E:\code\demo\demo.py
判断路径是否存在: True
判断是否为目录: True
判断是否为文件: False
获取文件的大小: 651
内置库sys
常用属性
- sys.version:返回 Python 解释器版本
- sys.platform:返回操作系统平台名称
- sys.argv:返回外部向程序传递的参数
- sys.modules:返回已导入的模块信息
- sys.path:返回导包的搜索路径列表
常用方法:
- sys.getdefaultencoding():获取编码方式
- sys.exit():运行时退出