Python 内置库os、sys

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():运行时退出

你可能感兴趣的:(Python学习,python,开发语言,path,路径操作)