os删除文件或者文件夹

最近在使用os.remove删除目录时报错了,这里记录下os操作文件或者目录的常用方法

  • 递归删除文件或文件夹
import shutil 
shutil.rmtree()
  • 文件的重命名
    os.rename('a.txt','b.txt')

  • 文件的删除
    • os.remove('./abc/a.txt') 只能删除文件
    • 删除目录会报错:PermissionError: [WinError 5] 拒绝访问。: '111'
  • 创建目录
    os.mkdir('xxx')
    os.mkdir('aaa/bbb')#aaa必须存在才能创建成功

  • 递归创建目录
    os.makedirs('111/222/333')
    os.makedirs('111/222/333',exist_ok=True) #存在就不会创建了

  • 删除目录
    os.rmdir('aaa/bbb') #删除aaa目录下的bbb目录
    只能删除空目录,否则会报错

  • 删除多级目录
    若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推。
    如果上一层目录不为空则停止删除文件。如果333不为空则报错。
    os.removedirs('111/222/333')

  • 获取当前目录
    os.getcwd()

  • 获取目录列表
    os.listdir()

  • 切换目录
    os.chdir()

  • 判断文件或者文件夹是否存在
    os.path.exists('111/222')

  • 判断是否为文件
    os.path.isfile()

  • 判断是否为文件夹
    os.path.isdir()

  • 获取绝对路径
    os.path.abspath()

  • 判断是否为绝对路径
    os.path.isabs()

  • 获取路径的最后部分
    os.path.basename()

  • 获取路径的路径部分
    os.path.dirname()

  • 获取文件信息
    • getatime 返回path所指向的文件或者目录的最后访问时间
    import os import time # 最后访问时间 
    ret = os.path.getatime('file') 
    ret1 = time.strftime('%Y-%m-%d %X',time.gmtime(ret)) 
    print(ret1) # 2019-01-10 12:26:55
    • getctime()查看文件创建时间,返回时间戳
    ret = os.path.getctime('file')
    print(ret)
    • getsize()查看文件大小
    ret = os.path.getsize('file/node.txt')
    print(ret)
    • getmtime()返回path所指向的文件或者目录的最后修改时间
    ret = os.path.getmtime('file') 
    print(ret) # 1547123215.5290873

猜你喜欢

转载自www.cnblogs.com/raisok/p/11432977.html