定义:

访问操作系统功能的模块,可以实现跨平台访问

常见用法:

1. 操作系统

  1. import os
  2. print(os.sep) #输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"
  3. print(os.linesep) #输出行终止符,例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'
  4. print(os.pathsep) #输出用于分割文件路径的字符串 win下为; Linux下为:
  5. print(os.name) #输出工作平台
  6. print(os.getenv(env_name)) #输出环境变量
  7. print(os.environ[env_name]) #输出环境变量
  8. os.putenv(key, value) # 设置环境变量值
  9. print(os.getcwd()) #获取当前路径

2. 目录操作

  1. import os
  2. os.listdir() #返回指定目录下所有的文件和目录
  3. os.mkdir() #创建目录, 无法多层级创建
  4. os.rmdir() #删除一个目录,如果有文件则无法删除
  5. os.makedirs(dirnames) #递归生成多层目录,如果目录全部存在则创建失败
  6. os.removedirs(dirnames) #递归删除多层空目录,如果有文件则无法删除
  7. os.chdir() #改变当前目录
  8. os.rename() #重命名,重命名后文件名已经存在,则重命名失败
  9. os.chmod(path,mode,dir_fd=None, follow_symlinks=True) #设置文件权限
  10. dirname,filename = os.path.split(path) #分离文件路径和文件名
  11. fname,fename = os.path.splitext(path) #分离文件名和文件后缀

3. path模块

  1. import os
  2. os.path.exists(path) #判断文件或者目录是否存在
  3. os.path.isfile(path) #判断是否为文件
  4. os.path.isdir(path) #判断是否为目录
  5. os.path.basename(path) #获取文件名
  6. os.path.dirname(path) #获取文件路径 后面最好是全路径,如果是py文件则返回空字符
  7. os.path.getsize(name) #获取文件大小 ,如果是目录则返回0,返回值为字节大小
  8. os.path.abspath(path) #获取绝对路径
  9. os.path.join(path,name) #连接目录和文件名或其它目录
  10. os.path.sep #输出路径分隔符,win下为"\",Linux下为"/"

4. 输出目录中的文件名

os.walk(top, topdown=True, onerror=None, followlinks=False)

  • top — 是你所要遍历的目录的地址.
  • topdown — 可选,为 True,则优先遍历top目录,否则优先遍历 top 的子目录(默认为开启)。
  • onerror — 可选,需要一个 callable 对象,当 walk 需要异常时,会调用。
  • followlinks — 可选,如果为 True,则会遍历目录下的快捷方式,默认开启
    1. import os
    2. '''
    3. root 所指的是当前正在遍历的这个文件夹的本身的地址
    4. dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)
    5. files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)
    6. '''
    7. for root,dirs,files in os.walk('.',topdown=True):
    8. for name in dirs:
    9. print(os.path.join(root,name))
    10. for name in files:
    11. print(os.path.join(root,name))