首页 > 其他 > 详细

os模块

时间:2018-08-09 11:41:36      阅读:110      评论:0      收藏:0      [点我收藏+]

Python的标准库中的os模块主要涉及普遍的操作系统功能。可以在Linux和Windows下运行,与平台无关。

导入模块

import os

os模块

os模块常用方法

常用文件和文件夹的操作

  • getcwd()
    • 获取当前工作目录(当前工作目录默认都是当前文件所在的文件夹)
    • result = os.getcwd()
      print(result) 
  • chdir()
    • 改变当前工作目录
    • os.chdir(/home/sy)
      result = os.getcwd()
      print(result)
  • listdir()
    • 获取指定文件夹内所有内容的名称列表
    • result = os.listdir(/home/sy)
      print(result)
  • mkdir()
    • 创建文件夹
    • os.mkdir(girls)
  • makedirs()
    • 递归创建文件夹
    • os.makedirs(/home/sy/a/b/c/d)
  • rmdir()
    • 删除空目录
    • os.rmdir(girls)
  • removedirs()
    • 递归删除文件夹,必须都是空目录
    • os.removedirs(/home/sy/a/b/c/d)
  • rename()
    • 文件或者文件夹重命名
    • os.rename(/home/sy/a,/home/sy/alibaba
      os.rename(02.txt,002.txt
  • stat()
    • 获取文件或者文件夹的信息
    • result = os.stat(/home/sy/PycharmProject/Python3/10.27/01.py)
      print(result)
  • system()
    • 执行系统命令(危险函数)
    • result = os.stat(/home/sy/PycharmProject/Python3/10.27/01.py)
      print(result)

常用环境变量的操作

环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。

  • getenv()
    • 获取系统的环境变量
    • result = os.getenv(PATH)
      print(result.split(:))
  • putenv()
    • 将一个目录添加到环境变量中(临时增加,只对当前脚本有效)
    • os.putenv(PATH,/home/sy/下载)
      os.system(syls)

其他方法

  • exit()
    • 退出终端的命令  

os模块中常用的属性

  • curdir
    • 表示当前文件夹,但是一般用‘.‘来表示,一般情况下可以省略
    • print(os.curdir)
  • pardir
    • 表示上层文件夹,但是一般用‘..‘来表示,不可以省略
    • print(os.pardir)
  • name
    • 获取代表操作系统的名称或者字符串
    • print(os.name)   #posix -> linux或者unix系统  nt -> window系统 
  • sep
    • 获取系统路径间间隔符
    • print(os.sep)    # window ->\    linux ->/
  • extsep
    • 获取文件名称和后缀之间的间隔符号
    • print(os.extsep)        #  window和inux -> .
  • linesep
    • 获取操作系统的换行符号
    • print(repr(os.linesep))    # window -> \r\n  linux/unix -> \n 

os.path子模块

常用方法

  • abspath()
    • 将相对路径转换为绝对路径
    • path = ./boys#相对
      result = os.path.abspath(path)
      print(result)
  • dirname()
    • 获取完整路径当中的目录部分
    • path = /home/sy/boys
      result = os.path.dirname(path)
      print(result)   # /home/sy
  • basename()
    • 获取完整路径当中的主体部分
    • path = /home/sy/boys
      result = os.path.basename(path)
      print(result)   # boys
  • split()
    • 将一个完整的路径切割成目录部分和主体部分
    • path = /home/sy/boys
      result = os.path.split(path)
      print(result)       # (‘/home/sy‘, ‘boys‘)
  • join()
    • 将两个路径合并成一个
    • var1 = /home/sy
      var2 = 000.py
      result = os.path.join(var1,var2)
      print(result)       # /home/sy\000.py  , 产生这个结果的原因是,我在window下运行,用的是Linux下的目录,但是拼接它采用的是当前系统默认的路径间间隔符,而window默认的是‘\’。
  • splitext()
    • 将一个路径切割成文件后缀和其他两个部分,主要用于获取文件的后缀
    • path = /home/sy/000.py
      result = os.path.splitext(path)
      print(result)       # (‘/home/sy/000‘, ‘.py‘)
  • getsize()
    • 获取文件的大小
    • path = ./000.py
      result = os.path.getsize(path)
      print(result)   # 1981
  • isfile()  
    • 检测是否是文件
    • path = /home/sy/000.py
      result = os.path.isfile(path)
      print(result)
  • isdir()
    • 检测是否是文件夹
    • result = os.path.isdir(path)
      print(result)
  • islink()
    • 检测是否是一个软链接
    • path = /initrd.img.old
      result = os.path.islink(path)
      print(result)
  • 关于文件的操作时间
    • #getctime() 获取文件的创建时间 get create time
      #getmtime() 获取文件的修改时间 get modify time
      #getatime() 获取文件的访问时间 get active time
    • import time
      
      filepath = /home/sy/下载/chls
      
      result = os.path.getctime(filepath)
      print(time.ctime(result))
      
      result = os.path.getmtime(filepath)
      print(time.ctime(result))
      
      result = os.path.getatime(filepath)
      print(time.ctime(result))
  • exists()
    • 检测某个路径是否真实存在
    • filepath = /home/sy/下载/chls
      result = os.path.exists(filepath)
      print(result)
  • isabs()
    • 检测一个路径是否是绝对路径
    • path = /boys
      result = os.path.isabs(path)
      print(result)   # True
  • samefile()
    • 检测两个路径是否指向是同一个文件
    • path1 = /home/sy/下载/001
      path2 = ../../../下载/001
      result = os.path.samefile(path1,path2)
      print(result) 
  • ismount()
    • 检查指定参数是否是挂载点
    • os.path.ismount("/mnt/cdrom")

常用属性

  • environ
    • 获取和设置系统环境变量的内置值
      • 获取, 和os中的os.getenv(‘PATH‘)同效果
        • print(os.environ[PATH])
      • 设置
        • os.environ[PATH] += :/home/sy/下载
          os.system(chls)

           

 

os模块

原文:https://www.cnblogs.com/kuxingseng95/p/9447441.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!