zoukankan      html  css  js  c++  java
  • Python 删除某一目录下的所有文件或文件夹

    实例:
    def del_file(filepath):
        """
        删除某一目录下的所有文件或文件夹
        :param filepath: 路径
        :return:
        """
        del_list = os.listdir(filepath)
        for f in del_list:
            file_path = os.path.join(filepath, f)
            if os.path.isfile(file_path):
                os.remove(file_path)
            elif os.path.isdir(file_path):
                shutil.rmtree(file_path)
    shutil是一个高层次的文件操作模块。True参数表示ignore_errors(忽略拷贝时候的错误)。

    类似于高级API,而且主要强大之处在于其对文件的复制与删除操作更是比较支持好。

     

    1.取得当前目录

    files = os.getcwd() # files中保存的是当前的执行目录

    如果是要获得程序运行的当前目录所在位置,那么可以使用os模块的os.getcwd()函数。

    如果是要获得当前执行的脚本的所在目录位置,那么需要使用sys模块的sys.path[0]变量或者sys.argv[0]来获得

    2.更改当前目录

    os.chdir("abc/bbb") #将当前的目录设置为abc/bbb
    说明:当指定的目录不存在时,引发异常

    3.将一个路径名分解为目录名和文件名两部分
    fpath,fname=os.path.split("c:/file/log.log")   c:/file   log.log
    
    

    4.分解文件名的扩展名

    a,b = os.path.splitext("C:a.txt")  #C:a    .txt

    5.判断一个路径(目录或文件)是否存在

    bool = os.path.exists("filepath')   # True 或False

    6.判断是否为文件

    bool = os.path.isfile(file)  # True 或 False

    7.判断是否为目录

    bool = os.path.isdir(path) # True 或False

    8.获取某目录中的文件及子目录的列表

    file_list = os.listdir("c:a")  # a.py,b.py

    9.创建子目录

    os.makedirs(“../123”)  #path是要创建的子目录

    调用有可能失败,可能的原因是:

    (1) path 已存在时(不管是文件还是文件夹)

    (2) 驱动器不存在

    (3) 磁盘已满

    (4)磁盘是只读的或没有写权限

    10.删除子目录

    os.rmdir(path) #path 是要删除的子目录

    产生异常的可能原因:

    (1) path 不存在

    (2) path 子目录中有文件或下级子目录

    (3) 没有操作权限或只读

    11.删除文件

    os.remove(filename) #filename:要删除的文件名

    产生异常的可能原因:

    (1) filename 不存在

    (2) 对filename文件, 没有操作权限或只读。

    12.文件改名

    os.name(oldFilename,newFilename)

    产生异常的原因:

    (1) oldfilename 旧文件名不存在

    (2) newFilename 新文件已经存在时,此时,您需要先删除 newFilename 文件。

     
  • 相关阅读:
    yii 引入文件
    CodeForces 621C Wet Shark and Flowers
    面试题题解
    POJ 2251 Dungeon Master
    HDU 5935 Car(模拟)
    HDU 5938 Four Operations(暴力枚举)
    CodeForces 722C Destroying Array(并查集)
    HDU 5547 Sudoku(dfs)
    HDU 5583 Kingdom of Black and White(模拟)
    HDU 5512 Pagodas(等差数列)
  • 原文地址:https://www.cnblogs.com/jiablogs/p/11978204.html
Copyright © 2011-2022 走看看