• OS模块


    os模块

    本模块提供了一种使用与操作系统相关的功能的便捷式途径。

    • os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
    >>> import os
    >>> os.getcwd()
    'D:\Desktop\Netfile
    
    • os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd
    >>> os.chdir('D:/')  # 也可使用相对路径>>> os.chdir('../../../')
    >>> os.getcwd()
    'D:\'
    
    • os.curdir 返回当前目录:.
    >>> os.curdir
    '.'
    
    • os.pardir 获取当前目录的父目录字符串名:..
    >>> os.pardir
    '..'
    
    • os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname
    >>> os.mkdir('d1')
    >>> os.listdir()
    [...'d1', ...]
    
    • os.makedirs('dirname1/dirname2') 可生成多层递归目录
    >>> os.makedirs('d1/d2/d3')
    >>> os.listdir('d1')
    ['d2']
    >>> os.listdir('d1/d2')
    ['d3']
    
    • os.removedirs('dirname1') 目录内有文件无法删除,若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推。
    >>> os.removedirs('d1/d2/d3')
    >>> os.listdir('d1')
    FileNotFoundError: [WinError 3] 系统找不到指定的路径。: 'd1'
    
    • os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
    >>> os.makedirs('d1/d2')
    >>> os.rmdir('d1')
    OSError: [WinError 145] 目录不是空的。: 'd1'
    
    • os.remove() 删除一个文件
    >>> os.remove('a.txt')
    
    • os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
    >>> os.listdir('E:/')
    ['$RECYCLE.BIN', 'Google', 'Google下载', 'Honeyview', 'System Volume Information']
    
    • os.rename("oldname","newname") 重命名文件/目录
    >>> os.rename('d1','d2')
    
    • os.stat('path/filename') 获取文件/目录信息
    >>> os.stat('d2')
    os.stat_result(st_mode=16895, st_ino=844424930218800, st_dev=781950587, st_nlink=1, st_uid=0, st_gid=0, st_size=0, st_atime=1610350677, st_mtime=1610350677,
     st_ctime=1610350677)
    
    • os.sep 输出操作系统特定的路径分隔符,win下为"",Linux下为"/"
    >>> os.sep
    '\'
    
    • os.linesep 输出当前平台使用的行终止符,win下为" ",Linux下为" "
    >>> os.linesep
    '
    '
    
    • os.pathsep 输出用于分割文件路径的字符串 win下为;,Linux下为:
    >>> os.pathsep
    ';'
    
    • os.name 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
    >>> os.name
    'nt'
    
    • os.system("bash command") 运行shell命令,直接显示,没有返回值。
    >>> os.system('dir')  # 列出当前目录下所有文件
    
    • os.path.abspath(path) 返回path规范化的绝对路径
    >>> os.path.abspath('Z:/a\b/c\d')
    'Z:\a\b\c\d'
    
    • os.path.split(path) 将path分割成目录和文件名二元组返回
    >>> os.path.split('Z:\a\b\c\d')
    ('Z:\a\b\c', 'd')
    
    • os.path.dirname(path) 返回path的目录。就是os.path.split(path)的第一个元素
    >>> os.path.dirname('Z:\a\b\c\d')
    'Z:\a\b\c'
    
    • os.path.basename(path) 返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素.
    >>> os.path.basename('Z:\a\b\c\d')
    'd'
    
    • os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
    >>> os.path.exists('Z:\a\b\c\d')
    False
    >>> os.path.exists('D:')
    True
    
    • os.path.isabs(path) 如果path是绝对路径,返回True
    >>> os.path.isabs('Z:\a\b\c\d')
    True
    >>> os.path.isabs('D:')
    False
    
    • os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False
    >>> os.path.isfile('Z:\a\b\c\d')
    False
    >>> os.path.isfile('D:')  # 必须是文件
    False
    
    • os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False
    >>> os.path.isdir('D:')
    True
    
    • os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
    >>> os.path.join('a','b','c')
    'a\b\c'
    >>> os.path.join('D:','a','b')
    'D:a\b'
    >>> os.path.join('a','b','D:','c')
    'D:c'
    >>> os.path.join('a','b','D:/','/c')  # 第一个绝对路径之前的参数将被忽略
    'D:/c'
    
    • os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间。
    >>> os.path.getatime('d2')
    1610350677.7029717
    
    • os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间。
    >>> os.path.getmtime('d2')
    1610350677.7029717
    
    • os.path.getsize(path) 返回path的大小,单位字节。
    >>> os.path.getsize('day04/test.py')
    7854
    
    • os.environ 获取系统环境变量字典,可通过字典设置系统环境变量。(常用)
    # 获取全部系统环境变量
    >>> os.environ
    environ({'NUMBER_OF_PROCESSORS': '4', 'COMMONPROGRAMFILES': 'C:\Program Files\Common Files', 'PROMPT': '$P$G', 'SESSIONNAME': 'Console',...})
    
    # 获取指定系统环境变量
    >>> os.environ.get("OS")
    'Windows_NT'
    
    # 添加变量
    >>> os.environ['PASSWORD']='123'
    >>> os.environ.get('PASSWORD')
    '123'
    

    添加的变量仅在解释器本次执行过程中生效,解释器关闭则失效。

  • 相关阅读:
    深入学习webpack(四)
    深入学习webpack(三)
    深入学习webpack(二)
    深入学习webpack(一)
    (转载)路径中 斜杠/和反斜杠 的区别
    jquery中beforeSend和complete的使用 --- 提高用户体验&&设置请求头
    好的用户界面-界面设计的一些技巧
    使用vue Devtools
    vue脚手架 && 实例
    表单(中)-EasyUI Combogrid 组合网格、EasyUI Numberbox 数字框、EasyUI Datebox 日期框、EasyUI Datetimebox 日期时间框、EasyUI Calendar 日历
  • 原文地址:https://www.cnblogs.com/ChiRou/p/14267078.html
Copyright © 2020-2023  润新知