最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python刪除指定目錄下的文件和文件夾的實現(xiàn)

 更新時間:2024年01月10日 09:39:47   作者:PythonFun  
在日常的辦公中,我們可以利用Python批量刪除文件和文件夾,本文就來介紹一下python刪除指定目錄下的文件和文件夾的實現(xiàn),感興趣的可以了解一下

在日常的辦公中,我們可以利用Python批量刪除文件和文件夾,但一定要注意這一過程的不可逆轉性,因此在操作前一定要做好備份。

下面我們來介紹兩種執(zhí)行遍歷、篩選和刪除的兩種方法。主要采用的是os模塊和pathlib模塊。刪除文件時,我們采用的是os.remove(),刪除目錄我們用的是shutil.rmtree()

一、os刪除法

我們可以用os模塊中的listdir()來遍歷目錄下面的文件,如果是當前目錄就用path = os.curdir來指定,然后用shutil來刪除,非常簡單、實用和方便。

首先了解幾個關鍵方法:

  • os.getcwd()該函數(shù)可以返回當前所在的目錄。
files = os.getcwd() # files中保存的是當前的執(zhí)行目錄
  • os.path.splitext()該函數(shù)可以分解文件名的擴展名。
  • os.listdir(file_path)該函數(shù)可以列出給定路徑下的所有文件與文件夾。
  • os.path.join(file_path, file_name)該函數(shù)可以將路徑與文件名拼接起來。
  • os.path.isfile(path)該函數(shù)可以判斷指定的文件路徑是否為文件。
  • os.path.isdir(path)該函數(shù)可以判斷指定的路徑是否為文件夾。
  • os.remove(filename)該函數(shù)可以刪除指定路徑的文件。

算法過程是,首先構造函數(shù),檢查指定目錄是否為空,如果不為空,使用OS和迭代刪除的方法,刪除test目錄下的所有目錄和文件,代碼如下:

import os
import shutil
def  del_file(path):
      if not os.listdir(path):
            print('目錄為空!')
      else:
            for i in os.listdir(path):
                  path_file = os.path.join(path,i)  #取文件絕對路徑
                  print(path_file)
                  if os.path.isfile(path_file):
                        os.remove(path_file)
                  else:
                        del_file(path_file)
                        shutil.rmtree(path_file)
if __name__ == '__main__':
      path=r'test' 
      del_file(path)
    

二、Pathlib刪除法

pathlib是比os更加強大的一個模塊。它可以執(zhí)行遍歷、刪除等多項命令。

使用pathlib,shutil,刪除更加快捷。unlink()刪除文件,rmtree()刪除目錄,一氣呵成。

import shutil
from pathlib import Path
def  del_file(path):
      for elm in Path(path).glob('*'):
            print(elm)
            elm.unlink() if elm.is_file() else shutil.rmtree(elm)
if __name__ == '__main__':
      path=r'test' 
      del_file(path)

三、學后反思

1. pathlib中有很多不錯的方法,如unlink, glob,replace等,靈活運用可以解決多項問題。

2. 如果pathlib用的不熟,可以把os學好可基本可以滿足的日常需求。

3.使用過程中可以利用列表推導式,和python中的三元運算符一行代碼就搞定,可以進一步優(yōu)化代碼。

到此這篇關于python刪除指定目錄下的文件和文件夾的實現(xiàn)的文章就介紹到這了,更多相關python刪除指定目錄文件內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python+opencv 實現(xiàn)圖片文字的分割的方法示例

    Python+opencv 實現(xiàn)圖片文字的分割的方法示例

    這篇文章主要介紹了Python+opencv 實現(xiàn)圖片文字的分割的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-07-07
  • windows中安裝Python3.8.0的實現(xiàn)方法

    windows中安裝Python3.8.0的實現(xiàn)方法

    這篇文章主要介紹了windows中安裝Python3.8.0的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • Python如何實現(xiàn)郵件功能

    Python如何實現(xiàn)郵件功能

    在本篇文章里小編給大家分享的是關于Python實現(xiàn)郵件功能的方法,有需要的朋友們可以學習參考下。
    2020-05-05
  • django 簡單實現(xiàn)登錄驗證給你

    django 簡單實現(xiàn)登錄驗證給你

    這篇文章主要介紹了django 簡單實現(xiàn)登錄驗證給你,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • 一條命令解決mac版本python IDLE不能輸入中文問題

    一條命令解決mac版本python IDLE不能輸入中文問題

    本文通過一條命令幫助大家解決mac版本python IDLE無法輸入中文問題,需要的朋友可以參考下
    2018-05-05
  • python實現(xiàn)三次樣條插值

    python實現(xiàn)三次樣條插值

    這篇文章主要為大家詳細介紹了python實現(xiàn)三次樣條插值,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • Python實現(xiàn)基于二叉樹存儲結構的堆排序算法示例

    Python實現(xiàn)基于二叉樹存儲結構的堆排序算法示例

    這篇文章主要介紹了Python實現(xiàn)基于二叉樹存儲結構的堆排序算法,結合實例形式分析了Python二叉樹的定義、遍歷及堆排序算法相關實現(xiàn)技巧,需要的朋友可以參考下
    2017-12-12
  • Python中利用sorted()函數(shù)排序的簡單教程

    Python中利用sorted()函數(shù)排序的簡單教程

    這篇文章主要介紹了Python中利用sorted()函數(shù)排序的簡單教程,sorted()函數(shù)有返回值,在Python的排序實現(xiàn)中發(fā)揮著相當重要的作用,需要的朋友可以參考下
    2015-04-04
  • NumPy 通用函數(shù)(ufunc)的實現(xiàn)

    NumPy 通用函數(shù)(ufunc)的實現(xiàn)

    本文主要介紹了NumPy 通用函數(shù)(ufunc)的實現(xiàn),包括數(shù)學運算類、統(tǒng)計與聚合類和數(shù)組操作類,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2026-01-01
  • Python機器學習庫sklearn(scikit-learn)的基礎知識和高級用法

    Python機器學習庫sklearn(scikit-learn)的基礎知識和高級用法

    Scikit-Learn是 Python 最流行的機器學習庫之一,它提供了各種工具來實現(xiàn)、評估和探索各種學習算法,用于,各種機器學習任務,在本教程中,我們將介紹 Scikit-Learn 的基礎知識和一些高級用法,并提供一些實例代碼來幫助我們更好地理解
    2023-07-07

最新評論

蓬安县| 康平县| 华坪县| 鄂伦春自治旗| 饶平县| 鄂托克旗| 天津市| 嵊泗县| 武夷山市| 福鼎市| 昌平区| 古交市| 确山县| 青阳县| 左权县| 肃宁县| 永顺县| 乡宁县| 卓资县| 鹤峰县| 潞城市| 新密市| 武威市| 三江| 福鼎市| 化德县| 杭锦后旗| 三亚市| 重庆市| 合水县| 恩平市| 桦甸市| 苏尼特左旗| 河间市| 资中县| 抚远县| 黔南| 宾阳县| 盐池县| 澄迈县| 晋州市|