欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

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

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

一、os刪除法

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

首先了解幾個關(guān)鍵方法:

  • os.getcwd()該函數(shù)可以返回當(dāng)前所在的目錄。
files = os.getcwd() # files中保存的是當(dāng)前的執(zhí)行目錄
  • os.path.splitext()該函數(shù)可以分解文件名的擴(kuò)展名。
  • 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ù)可以刪除指定路徑的文件。

算法過程是,首先構(gòu)造函數(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更加強(qiáng)大的一個模塊。它可以執(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)

三、學(xué)后反思

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

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

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

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

相關(guān)文章

  • python通過apply使用元祖和列表調(diào)用函數(shù)實例

    python通過apply使用元祖和列表調(diào)用函數(shù)實例

    這篇文章主要介紹了python通過apply使用元祖和列表調(diào)用函數(shù),實例分析了python中apply方法的使用技巧,需要的朋友可以參考下
    2015-05-05
  • PyTorch中torch.tensor()和torch.to_tensor()的區(qū)別

    PyTorch中torch.tensor()和torch.to_tensor()的區(qū)別

    在Pytorch中Tensor和tensor都用于生成新的張量,但二者并不相同,下面這篇文章主要給大家介紹了關(guān)于PyTorch中torch.tensor()和torch.to_tensor()區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • 13個Pandas實用技巧,助你提高開發(fā)效率

    13個Pandas實用技巧,助你提高開發(fā)效率

    這篇文章主要介紹了13個Pandas實用技巧,幫助你提高python開發(fā)的效率,感興趣的朋友可以了解下
    2020-08-08
  • 用python寫爬蟲簡單嗎

    用python寫爬蟲簡單嗎

    在本篇內(nèi)容里小編給大家整理的是關(guān)于用python寫爬蟲是否簡單的相關(guān)內(nèi)容文章,需要的朋友們可以學(xué)習(xí)下。
    2020-07-07
  • 詳解Selenium-webdriver繞開反爬蟲機(jī)制的4種方法

    詳解Selenium-webdriver繞開反爬蟲機(jī)制的4種方法

    這篇文章主要介紹了詳解Selenium-webdriver繞開反爬蟲機(jī)制的4種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • python單例模式之selenium driver實現(xiàn)單例

    python單例模式之selenium driver實現(xiàn)單例

    這篇文章主要介紹了python單例模式之selenium driver實現(xiàn)單例,使用裝飾器實現(xiàn)單例,文章基于python的相關(guān)資料實現(xiàn)主題,具有一的的參考價值,需要的朋友可以參考一下
    2022-03-03
  • python如何通過pyarmor庫保護(hù)源代碼

    python如何通過pyarmor庫保護(hù)源代碼

    pyarmor是一款用于加密和保護(hù)python腳本的工具,可以用于防止源代碼泄露,下面我們就來學(xué)習(xí)一下Python如何利用pyarmor庫來保護(hù)源代碼吧
    2024-11-11
  • python3中的eval和exec的區(qū)別與聯(lián)系

    python3中的eval和exec的區(qū)別與聯(lián)系

    這篇文章主要介紹了python3中的eval和exec的區(qū)別與聯(lián)系,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-10-10
  • python中的閉包用法實例詳解

    python中的閉包用法實例詳解

    這篇文章主要介紹了python中的閉包用法,以實例形式詳細(xì)分析了Python中閉包的概念及相關(guān)使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-05-05
  • Python八皇后問題解答過程詳解

    Python八皇后問題解答過程詳解

    這篇文章主要介紹了Python講解八皇后問題過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07

最新評論