在 python 中删除带有路径作为参数的特定文件夹

Delete a specific folder with a path as a parameter in python

我想删除名为“testfolder”的文件夹及其中的所有子文件夹和文件。我想在调用 python 文件时将“testfolder”路径作为参数提供。例如......(testfolder 位置)并且当文件夹存在时它应该删除“testfolder”

我想这可能就是您要找的东西

import os
import shutil

pathLocation = # Whatever your path location is
if os.path.exists(pathLocation):
     shutil.rmtree(pathLocation)
else:
    print('the path doesn\'t exist')

最好使用绝对路径并只导入 rmtree 函数 from shutil import rmtree 因为这是一个大包上面的行将只导入所需的函数。

from shutil import rmtree
rmtree('directory-absolute-path')

您可以使用 shutil.rmtree() 删除文件夹和 argparse 获取参数。

import shutil
import argparse
import os

def remove_folder(folder_path='./testfolder/'):
    if os.path.exists(folder_path):
        shutil.rmtree(folder_path)
        print(f'{folder_path} and its subfolders are removed succesfully.')
    else:
        print(f'There is no such folder like {folder_path}')


if __name__ == "__main__":
     parser = argparse.ArgumentParser(description='Python Folder Remover')
     parser.add_argument('--remove', '-r', metavar='path', required=True)

     args = parser.parse_args()

     if args.remove:
         remove_folder(args.remove)

您可以将上面的脚本保存为 'remove.py' 并从命令提示符调用它,例如:

  python remove.py --remove "testfolder"