python 删除文件夹和文件

  • 一、三种删除方法
    • 第一种:删除一个文件夹,无论里面是否有文件或文件夹
      • (不支持文件,文件夹不存在会报错)
    • 第二种 递归删除dir_path目标文件夹下所有文件,以及各级子文件夹下文件,保留各级空文件夹
      • (支持文件,文件夹不存在不报错)
    • 第三种: 删除dir_path目标文件夹下所有内容,保留dir_path文件夹
      • (不支持文件,文件夹不存在会报错)
  • 二、删除失败情况 PermissionError: [WinError 5] 拒绝访问
    • 2.1 给python权限
    • 2.2 删除改为更名

目录

一、三种删除方法
二、删除失败情况 PermissionError: [WinError 5] 拒绝访问
2.1 给python权限
2.2 删除改为更名

一、三种删除方法

python删除文件和文件夹主要用到os模块和shutil模块,针对文件夹和文件的删除,有几种情况,直接上代码:

文件删除相关的所有操作,基本全部覆盖

如果确实对你有帮助,右侧打赏一分鼓励一下吧,嘿咻嘿咻

import shutil
import os
from pathlib import Path

第一种:删除一个文件夹,无论里面是否有文件或文件夹

(不支持文件,文件夹不存在会报错)

def del_files0(dir_path):shutil.rmtree(dir_path)

第二种 递归删除dir_path目标文件夹下所有文件,以及各级子文件夹下文件,保留各级空文件夹

(支持文件,文件夹不存在不报错)

def del_files(dir_path):if os.path.isfile(dir_path):try:os.remove(dir_path) # 这个可以删除单个文件,不能删除文件夹except BaseException as e:print(e)elif os.path.isdir(dir_path):file_lis = os.listdir(dir_path)for file_name in file_lis:# if file_name != 'wibot.log':tf = os.path.join(dir_path, file_name)del_files(tf)print('ok')

第三种: 删除dir_path目标文件夹下所有内容,保留dir_path文件夹

(不支持文件,文件夹不存在会报错)

def del_files2(dir_path):# os.walk会得到dir_path下各个后代文件夹和其中的文件的三元组列表,顺序自内而外排列,# 如 log下有111文件夹,111下有222文件夹:[('D:\\log\\111\\222', [], ['22.py']), ('D:\\log\\111', ['222'], ['11.py']), ('D:\\log', ['111'], ['00.py'])]for root, dirs, files in os.walk(dir_path, topdown=False):print(root) # 各级文件夹绝对路径print(dirs) # root下一级文件夹名称列表,如 ['文件夹1','文件夹2']print(files)  # root下文件名列表,如 ['文件1','文件2']# 第一步:删除文件for name in files:os.remove(os.path.join(root, name))  # 删除文件# 第二步:删除空文件夹for name in dirs:os.rmdir(os.path.join(root, name)) # 删除一个空目录if __name__ == '__main__':dir_path = Path('./log').absolute()del_files2(dir_path)

二、删除失败情况 PermissionError: [WinError 5] 拒绝访问

删除某些文件夹或者文件,比如git仓库的时候,会报错,显示 PermissionError: [WinError 5] 拒绝访问。

2.1 给python权限

这是因为没有权限,可以参考 >>解决办法<<

2.2 删除改为更名

我感觉给与权限还需要修改这修改那的很麻烦,直接放弃删除操作,替换为更改文件夹名字操作:

import random,os
dir_path = os.getcwd() # 当前目录绝对路径D:\git_helper
print(‘当前目录绝对路径:’, str(random.random())[-5:])
os.rename(src=‘…/weebot_wxbot’, dst=f’…/weebot_wxbot{str(random.random())[-5:]}')

python 删除文件夹和文件相关推荐

  1. python的文件怎么删除干净_python 实现彻底删除文件夹和文件夹下的文件

    python 中有很多内置库可以帮忙用来删除文件夹和文件,当面对要删除多个非空文件夹,并且目录层次大于3层以上时,仅使用一种内置方法是无法达到彻底删除文件夹和文件的效果的,比较low的方式是多次调用直 ...

  2. python 删除文件夹和文件【转】

    python 删除文件夹和文件 目录 一.三种删除方法 二.删除失败情况 PermissionError: [WinError 5] 拒绝访问 2.1 给python权限 2.2 删除改为更名 一.三 ...

  3. 【Python】1.python 删除文件夹和文件

    目录 1 os+shutil 模块 1.1 删除文件夹 1.2 删除文件夹以及文件 1.3 删除文件下所有内容 1.4 python3相关方法 1.4.1 os.unlink 1.4.2 os.rem ...

  4. python跳转和创建目录,Python - 创建目录,切换目录,创建文件,复制文件,移动文件 ,删除文件夹及文件...

    # -*- coding: utf-8 -*- """ Created on Mon Jan  9 00:35:43 2017 @author-Weixin: 95355 ...

  5. 【python】os模块 递归删除文件夹所有文件 --笔记

    ''' os.environ 获取系统的环境变量 os.name nt -- windows \r\n | posix --- Linux \nos.path:''' import osprint(o ...

  6. python技巧:删除文件夹里子文件夹指定文件以外的文件

    删除文件夹里子文件夹指定文件以外的文件 import os path='C:\\Users\\123\\Desktop\\data' #文件夹路径 for i in os.listdir (path) ...

  7. python中对文件、文件夹(文件操作函数)的操作

    python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目 ...

  8. python创建模块文件夹_python文件、文件夹、压缩包处理模块-shutil模块

    shutil模块 高级的文件.文件夹.压缩包 处理模块 本节内容基本在linux下python交互环境实现 复制移动文件.文件夹 将文件内容拷贝到另一个文件中,可以部分内容 格式如下: ``` shu ...

  9. python 实现统计ftp服务器指定目录下文件夹数目、文件数目及所有文件大小 本次主要为满足应用方核对上传到ftp服务器的文件是否缺漏。 主要要求:指定目录下,文件夹数目/文件数目/所有文件大小

    python 实现统计ftp服务器指定目录下文件夹数目.文件数目及所有文件大小 本次主要为满足应用方核对上传到ftp服务器的文件是否缺漏. 主要要求:指定目录下,文件夹数目/文件数目/所有文件大小,类 ...

最新文章

  1. 实验三 编程、编译、连接、跟踪
  2. Java数据结构与算法之排序
  3. Java自带的广告怎么删掉_如何屏蔽电脑上的弹窗广告?
  4. 马云马化腾李彦宏在IT峰会上的话-内容提炼
  5. 算法练习之leetcode两数相加(1)
  6. 如何创建比C语言更快的编程语言?
  7. 6 篇 2019 年最新模型剪枝技术合集
  8. 【英语学习】【WOTD】two-bit 释义/词源/示例
  9. python内核_python-在多处理模块中使用所有内核的100%
  10. js进阶 14-9 ajax事件有哪些
  11. GetLogicalDrives,GetLogicalDriveStrings,GetDri...
  12. 线性同余法求随机数python实现_百面机器学习笔记 | 第八章:采样 | 02 均匀分布随机数...
  13. Method threw ‘java.lang.NullPointerException‘ exception. Cannot evaluate com.sun.proxy.xxx
  14. android 锁屏界面 sim卡,注意!手机的这个密码比锁屏密码更重要,赶紧设置!攻略→...
  15. 利用马尔可夫模型分析游戏装备强化概率问题
  16. 【Markdown】Markdown插入图片的完美解决方法
  17. yum 下载离线包 及其安装
  18. Understanding parameters:理解参数(Parameter)
  19. (附源码)php水果百科动态网站 毕业设计 060917
  20. 写给 Java 程序员的前端 Promise 教程

热门文章

  1. L1-6 吃火锅 (15分)
  2. Bootstrap和jQuery炫酷音乐播放器插件
  3. php转发朋友圈缩略图片,解释最全的,手把手教的微信JS sdk分享设置教程-微信分享插件PHP源码JS-SDK接口,分享到朋友圈 转发好友带缩略图...
  4. 计算机组装涉及哪些硬件,组装一台电脑需要哪些配件_电脑硬件组装一台电脑需要什么零件...
  5. SAP数据类型 C字符型 character
  6. Android:简单音乐播放器,实现歌曲列表显示,播放暂停,切歌等功能
  7. 修改json文件,保存为txt文档
  8. 如何给视频制作添加字幕?
  9. java毕业设计流浪动物救助网站设计与实现源码+lw文档+mybatis+系统+mysql数据库+调试
  10. 销售员有什么途径可以快速找到客户资源?