import os
import tkinter as tk
from tkinter.filedialog import (askopenfilename,   # 请求打开一个文件名,用来选择需要打开的文件askdirectory,   # 请求一个目录,并返回文件名,用来选择需要的文件夹asksaveasfilename,   # 请求将文件名保存为asksaveasfile   # 选择保存文件的路径和自定义文件名及文件类型进行保存)class Operate_Dir:def __init__(self):self.root = tk.Tk()self.root.withdraw()  # 用来关闭root窗口self.dir_path = askdirectory()def Remove_emptyDir(self):'''递归删除空的目录文件,os.walk提供了从内到外的遍历目录树的方法,设置topdown=False后,可以由内到外判断当前目录树下是否有文件和文件夹,如果都没有说明当前目录树为空文件夹,使用os.rmdir删除。'''for path,dirs,files in os.walk(self.dir_path, topdown=False):if not files and not dirs:  # 用来递归删除所有空的文件目录os.rmdir(path)def traverse_dir(self,topdown=True):'''遍历选择文件中的所有文件夹目录'''for path, dirs, files in os.walk(self.dir_path, topdown):print(path)def traverse_files(self,find=None,topdown=True):'''遍历文件下所有的文件,可以通过遍历出的文件全路径做查找包含自己需要的文件进行返回其路径find的值为 1 时,选择关键字搜索文件目录'''if find == 1:keyword = input('输入需要查找的目录或文件名中所包含的相关文字:')for path, dirs, files in os.walk(self.dir_path, topdown):files = os.listdir(path)for file in files:file_path = path + '/' + fileif (keyword in file_path) and (os.path.isfile(file_path)):print(file_path)else:for path, dirs, files in os.walk(self.dir_path, topdown):files = os.listdir(path)for file in files:file_path = path + '/' + fileif os.path.isfile(file_path):print(file_path)if __name__ == '__main__':# Operate_Dir().traverse_files(find=1)   # 在指定文件下查找文件Operate_Dir().traverse_files()  # 遍历指定目录下的所有文件

python-递归删除空文件夹、遍历目录文件相关推荐

  1. C#关于文件夹遍历以及文件拷贝

    C#关于文件夹遍历以及文件拷贝 using System; using System.Collections.Generic; using System.ComponentModel; using S ...

  2. HALCON教程-初步:文件夹遍历,文件筛选,文件名拆分,图片读取及保存

    [1]文件夹遍历 list_image_files ( : : ImageDirectory, Extensions, Options : ImageFiles) ImageDirectory: 文件 ...

  3. Python递归文件夹遍历所有文件夹及文件

    第一种 : #!/usr/bin/env python # --*-- coding:UTF-8 --*--import osdef file_name(file_dir):for home, dir ...

  4. python遍历文件_python遍历目录文件脚本的示例

    例子 自己写的一个Python遍历文件脚本,对查到的文件进行特定的处理.没啥技术含量,但是也记录一下吧. 代码如下 复制代码 #!/usr/bin/python # -*- coding: utf-8 ...

  5. QT编写实现图片的幻灯片播放、自适应显示、缩放(以鼠标位置为中心进行缩放)、拖动、重置、显示鼠标位置像素坐标及RGB值、播放GIF动画、截图保存、批量保存、拖入文件夹遍历所有文件

    这个图片查看器功能很多,是我花了不少心思,不断优化,不断添加功能的成果: 1.能打开并显示所有常用图片格式文件,显示鼠标位置像素坐标及RGB值 2.能缩放,拖动图片,可以以鼠标为中心滚动滚轮进行缩放 ...

  6. c语言mkdir创建文件夹失败,cenos mkdir 无法创建文件夹,即便文件权限为777

    Java--如何创建文件夹及文件,删除文件,文件夹 package com.zz; import java.io.File; import java.io.IOException; /** * Jav ...

  7. Linux统计文件夹下的文件数量

    统计某文件夹下目录文件的个数,统计文本文件的数量 Linux下有三个命令:ls.grep.wc 通过这三个命令的组合可以统计目录下文件及文件夹的个数.ls常用命令介绍 统计当前目录下文件的个数(不包括 ...

  8. 递归算法遍历文件夹中所有文件递归删除文件夹

    - 引言:怎样才能遍历出一个文件夹中的所有文件呢,我们知道,java中的File类中有这样的方法,list() ,可以返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录.我们是否可 ...

  9. linux递归删除空文件夹,Shell脚本实现递归删除空文件夹

    有时我们需要递归删除空文件夹,网上找了一下,没有发现比较好的Shell脚本,于是自己动手写了一个 脚本 #!/bin/bash # author: 十年后的卢哥哥 # des: delete empt ...

最新文章

  1. GitHub上共享的简单易用 TensorFlow 代码集
  2. matlab金属槽有限差分法程序,有限差分法MATLAB程序
  3. 计算机供应链结构,面向供应链管理的二维条码设计-计算机系统结构专业毕业论文.docx...
  4. 七种常见分布式事务详解(2PC、3PC、TCC、Saga、本地事务表、MQ事务消息、最大努力通知)
  5. python中乘法和除法_python – NumPy的性能:uint8对比浮动和乘法与除法?
  6. Node.js学习之(第二章:exports和module.exports)
  7. python上传文件接口_python程序的web接口:上传和下载文件
  8. (Deep learning)深度卷积网络实战——第一部分
  9. 分析师:苹果或推出自家搜索引擎;曝因芯片缺货,华为智慧屏削减30-40%订单;Rust 1.46.0 发布|极客头条
  10. 宜信正式开源其 AIOps 落地三大利器
  11. Matlab函数——randn
  12. 天翼校园客户端拨号服务器无响应,天翼校园客户端问题总结及解决办法
  13. 【js练习】鼠标按下和松开事件
  14. mysql 视图 algorithm_MySQL的视图讲解
  15. Android使用Activity用作弹出式对话框Dialog
  16. 详解ArcGIS Server瓦片合并
  17. 修仙第一步:凌晨打坐
  18. vue阻止浏览器默认事件
  19. 《Java语言程序设计》 课程分析与总结(上)---我为什么这样设计考试试卷?
  20. 强调实体融合的当下,元宇宙当仁不让地成为各色玩家关注的焦点

热门文章

  1. STM32F407-高级定时器PWM输入功能
  2. Spring Boot + Vue 如此强大!
  3. 【北京】字节跳动50W(20-40K*15薪)测试开发工程师岗内推,这个岗位超适合你。
  4. JAVA学习(1天) #来源:异步图书
  5. 记录几个不错的学习网站
  6. Linux 虚拟内存的增加
  7. 三星Galaxy S5:更强更准的手势操作
  8. Vscode设置python解释器
  9. CFS 三层内网环境搭建及渗透
  10. InterProScan安装