os

Posted 小仙女~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了os相关的知识,希望对你有一定的参考价值。

os

os模块介绍

  • 和操作系统相关的功能被封装在os模块
  • os模块不受平台限制,因为Python是平台无关的,而获取当前路径Windows和Linux是不同的,所以Python的os模块作为中间层,在Windows平台通过os导入nt模块(Windows是nt架构),在linux通过os导入posix模块

删除相关

  • **removedirs()**若目录为空则删除,并递归到上一级目录,如若也为空,则删除,依次类推((删除的文件回收站没有))

    os.removedirs(r\'E:\\xiaoxiannv\\aa\\hh\')
    
  • **rmdir()**删除一个指定空目录,若不是空目录则报错

    os.rmdir(r\'E:\\xiaoxiannv\\aa\\hhh\')
    
  • **remove()**删除文件,不能删除文件夹

    os.remove(r\'E:\\xiaoxiannv\\aa\\kk\\uu.py\')
    
  • **rmtree()**删除带内容的目录

    import shutil
    shutil.rmtree(\'ll\')
    

查看相关

  • os.walk方法,主要用来遍历一个目录内各个子目录和子文件。(返回的是生成器)
    • 返回的是元组,元组中包含(dirpath, dirnames, filenames)
    • 第一个为起始路径,第二个为起始路径下的文件夹,第三个是起始路径下的文件。
s=os.walk(r\'E:\\xiaoxiannv\', topdown=True, onerror=None, followlinks=False)
for a,b,c in s:
    # print(c)
    #将路径和文件名拼接起来
    for i in c:
        path = os.path.join(a, i)  #
        print(path)
  • os.name 显示当前使用的平台
print(os.name)
nt 是windows系统
posix 是Linux系统
  • help()查看os模块帮助文档
# help()查看os模块帮助文档
print(help(os))
  • getcwd()查看当前所在目录chdir()切换指定路径
# getcwd()查看当前所在目录(路径)
print(os.getcwd())
# 切换目录(路径)
os.chdir(r\'E:\\xiaoxiannv\\aa\\kk\')
print(os.getcwd())

#得
# E:\\xiaoxiannv\\aa
# E:\\xiaoxiannv\\aa\\kk
  • curdir获取当前目录 pardir获取当前目录的父目录
# 获取当前目录
print(os.curdir)
# 获取当前目录的父目录
print(os.pardir)
# 得:. ..
  • listdir() 显示指定目录下所有文件,包括隐藏文件
print(os.listdir(r\'E:\\xiaoxiannv\'))
  • **stat()**获取文件目录信息,并可以获取到文件的大小
print(os.stat(r\'E:\\xiaoxiannv\\aa\\cc.py\'))

得:
os.stat_result(st_mode=33206, st_ino=114841790497964433, st_dev=2594564338, st_nlink=1, st_uid=0, st_gid=0, st_size=3585, st_atime=1618717691, st_mtime=1618717691, st_ctime=1617458016)
  • os.environ 获取操作系统的环境变量
print(os.environ)

创建修改相关

  • os.rename() 重命名文件
print(os.rename(\'cc.py\',\'pp.py\'))
  • **makedirs()**生成一个多层递归目录
os.makedirs(r\'E:\\xiaoxiannv\\aa\\hh\')
  • mkdir() 创建一个目录
os.mkdir(\'../aa/kk/oo\')
  • **getcwd()**查看当前所在目录(路径)**chdir()**切换指定路径
# getcwd()查看当前所在目录(路径)
print(os.getcwd())
# 切换目录(路径)
os.chdir(r\'E:\\xiaoxiannv\\aa\\kk\')
print(os.getcwd())

#得
# E:\\xiaoxiannv\\aa
# E:\\xiaoxiannv\\aa\\kk

路径相关操作

  • os.path.split() 将path分割成目录和文件名,以元组的形式返回

    print(os.path.split(r\'E:\\xiaoxiannv\\aa.py\'))
    # 得(\'E:\\\\xiaoxiannv\', \'aa.py\')
    
  • os.path.abspath() 返回路径规范化的绝对路径

    print(os.path.abspath(\'cc.py\'))
    # 得E:\\xiaoxiannv\\aa\\cc.py
    
  • os.path.dirname() 返回path的目录

    print(os.path.dirname(r\'E:\\xiaoxiannv\\aa\\cc.py\'))
    # 得 E:\\xiaoxiannv\\aa
    
  • **os.path.basename()**返回path最后的文件名

    print(os.path.basename(r\'E:\\xiaoxiannv\\aa\\cc.py\'))
    # 得:cc.py
    
  • **os.path.exists()**判断路径是否存在,如果存在返回True,如果不存在返回Flase

    print(os.path.exists(r\'E:\\xiaoxiannv\\aa\\cc.py\'))
    
  • **os.path.isabs()**判断路径是否是绝对路径,如果是返回True,如果不是返回Flase

    print(os.path.isabs(r\'E:\\xiaoxiannv\\aa\\cc.py\'))
    
  • **os.path.isfile()**判断是否是一个文件,如果是返回True,否则返回Flase

    print(os.path.isfile(r\'E:\\xiaoxiannv\\aa\\cc.py\'))
    
  • **os.path.isdir()**判断是否是一个存在的目录

    print(os.path.isdir(r\'E:\\xiaoxiannv\\aa\'))
    
  • os.path.join() 拼接路径和文件名

    print(os.path.join(r\'E:\\xiaoxiannv\\aa\',\'cc.py\'))
    
  • os.path.getatime()返回path所指向的文件或者目录的最后存取时间

    print(os.path.getatime(r\'E:\\xiaoxiannv\\aa\\cc.py\'))
    
  • os.path.getmtime()返回路径所指向的文件或者目录的最后修改时间

    print(os.path.getmtime(r\'E:\\xiaoxiannv\\aa\\cc.py\'))
    
  • **os.path.getsize()**获取文件大小

    print(os.path.getsize(r\'E:\\xiaoxiannv\'))
    

以上是关于os的主要内容,如果未能解决你的问题,请参考以下文章

java代码在片段活动中不起作用

python小知识片段

python小知识片段

如何在kotlin的片段内显示网格视图?

Android:向活动添加片段

C#程序员经常用到的10个实用代码片段 - 操作系统