Python批处理删除和重命名文件夹的实例


Posted in Python onJuly 11, 2018

1. 删除当前目录下不含有指定文件类型的文件夹

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import sys
import os
import shutil

pwd = os.getcwd()
L = os.listdir(".")
f = open("out.txt", "w")
for dirname in L:
 if os.path.isdir(dirname):
  print("dir name:" + dirname)
  os.chdir(dirname)
  files = os.listdir(".")
  filePreName = "filename"
  extName = "ext name"
  delete = True
  for filename in files:
   print filename
   print >> f, "%s" % filename
   filePreName, extName = os.path.splitext(filename)
   if extName.lower() == ".zip" or extName.lower() == ".jpg" or extName.lower() == ".doc" or extName.lower() == ".pdf" or extName.lower() == ".xls" or extName.lower() == ".gif" or extName.lower() == ".ppt" or extName.lower() == ".iso" or extName.lower() == ".mp3" or extName.lower() == ".wav" or extName.lower() == ".rar" or extName.lower() == ".mkv" or extName.lower() == ".mp4" or extName.lower() == ".bmp" or extName.lower() == ".exe" or extName.lower() == ".docx" or extName.lower() == ".png" or extName.lower() == ".txt":
    delete = False
  os.chdir("..")
  if delete:
   shutil.rmtree(dirname)
   print dirname + " deleted!!!"
   print >> f, "%s" % dirname + " deleted!!!"
  print "--------------------------"
  print >> f, "%s" % "--------------------------"
f.close()1

2. 遍历目录下每个子文件夹,并列出子文件夹下的文件,默认删除含指定类型的文件夹,不包含指定文件类型的,则提示,是否删除或者重命名文件夹

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import sys
import os
import shutil

pwd = os.getcwd()
L = os.listdir(".")
f = open("out.txt", "w")
for dirname in L:
 if os.path.isdir(dirname):
  print("dir name:" + dirname)
  os.chdir(dirname)
  files = os.listdir(".")
  i = 0
  filePreName = "filename"
  extName = "ext name"
  for filename in files:
   print filename
   print >> f, "%s" % filename
   filePreName, extName = os.path.splitext(filename)
   if extName == ".java" or extName == ".js" or extName == ".yml" or extName == ".ejs" or extName == ".svg" or extName == ".sample" or extName == ".styl" or extName == ".class" or extName == ".xml" or extName == ".html" or extName == ".so" or extName == ".OPA" or extName == ".pig" or extName == ".obj" or extName == ".sdb" or extName == ".dll":
    i += 1
  os.chdir("..")
  #整理杂乱的硬盘时,包含这些文件类型的无关文件夹直接删除
  if i >= 3 or filePreName == "HEAD" or filePreName == "master" or extName == "" or (filePreName == "index" and extName == ".html") or extName == ".java" or extName == ".pyc" or extName == ".py" or extName == ".html" or extName == ".HTM" or extName == ".ini" or extName == ".css" or extName == ".so" or extName == ".xml" or extName == ".bin":
    shutil.rmtree(dirname)
    print(dirname + " deleted!!!")
    print "--------------------------"
    continue
  deleteOrNot = raw_input("delete " + dirname + "?(y/n)")
  #除了无关文件夹,其余由“我”决定是删除还是直径重命名文件夹
  if deleteOrNot == 'y':
   shutil.rmtree(dirname)
   print dirname + " deleted!!!"
   print >> f, "%s" % dirname + " deleted!!!"   
  else:
   if deleteOrNot == "":
    print "no change" + dirname
   else:
    os.rename(dirname, deleteOrNot)
  print "--------------------------"
  print >> f, "%s" % "--------------------------"
f.close()

3. 使用子文件夹中第一个文件的文件名作为该子文件夹的名字

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import sys
import os
import shutil
import random

pwd = os.getcwd()
L = os.listdir(".")
f = open("rename.txt", "w")
for dirname in L:
 if os.path.isdir(dirname):
  os.chdir(dirname)
  files = os.listdir(".")
  filePreName = "filename"
  extName = "ext name"
  filename = files[0]
  filePreName, extName = os.path.splitext(filename)
  os.chdir("..")
  os.rename(dirname, filePreName + str(random.randint(1,999)))
  print dirname + "->" + filePreName + str(random.randint(1,999))
  print >> f, "%s" % dirname + "->" + filePreName + str(random.randint(1,999))
f.close()

以上这篇Python批处理删除和重命名文件夹的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
更改Python命令行交互提示符的方法
Jan 14 Python
Python实现遍历数据库并获取key的值
May 17 Python
Python中字符串的修改及传参详解
Nov 30 Python
Python实现简单的用户交互方法详解
Sep 25 Python
Python中logging.NullHandler 的使用教程
Nov 29 Python
Python实现批量修改图片格式和大小的方法【opencv库与PIL库】
Dec 03 Python
利用python在excel里面直接使用sql函数的方法
Feb 08 Python
python-pyinstaller、打包后获取路径的实例
Jun 10 Python
python实现控制COM口的示例
Jul 03 Python
Python配置pip国内镜像源的实现
Aug 20 Python
Python爬虫爬取有道实现翻译功能
Nov 27 Python
Django用内置方法实现简单搜索功能的方法
Dec 18 Python
python顺序的读取文件夹下名称有序的文件方法
Jul 11 #Python
通过python顺序修改文件名字的方法
Jul 11 #Python
对python3 一组数值的归一化处理方法详解
Jul 11 #Python
浅谈利用numpy对矩阵进行归一化处理的方法
Jul 11 #Python
Python实现基于PIL和tesseract的验证码识别功能示例
Jul 11 #Python
利用Python如何制作好玩的GIF动图详解
Jul 11 #Python
用pandas中的DataFrame时选取行或列的方法
Jul 11 #Python
You might like
php邮箱地址正则表达式验证
2015/11/13 PHP
WordPress中的shortcode短代码功能使用详解
2016/05/17 PHP
PHP用函数嵌入网站访问量计数器
2017/10/27 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
2020/02/16 PHP
深入认识JavaScript中的函数
2007/01/22 Javascript
setTimeout 不断吐食CPU的问题分析
2009/04/01 Javascript
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
2012/08/14 Javascript
js禁止页面使用右键(简单示例代码)
2013/11/13 Javascript
jQuery插件制作之全局函数用法实例
2015/06/01 Javascript
jQuery中cookie插件用法实例分析
2015/12/04 Javascript
Bootstrap自定义文件上传下载样式
2016/05/26 Javascript
使用ionic在首页新闻中应用到的跑马灯效果的实现方法
2017/02/13 Javascript
Vue2单一事件管理组件通信
2017/05/09 Javascript
vue学习教程之带你一步步详细解析vue-cli
2017/12/26 Javascript
详解mpvue中小程序自定义导航组件开发指南
2019/02/11 Javascript
js实现单元格拖拽效果
2020/02/10 Javascript
python的random模块及加权随机算法的python实现方法
2017/01/04 Python
Python实现的中国剩余定理算法示例
2017/08/05 Python
Python编程之基于概率论的分类方法:朴素贝叶斯
2017/11/11 Python
Python将文本去空格并保存到txt文件中的实例
2018/07/24 Python
tensorflow saver 保存和恢复指定 tensor的实例讲解
2018/07/26 Python
Python实现FTP文件传输的实例
2019/07/07 Python
Python绘制热力图示例
2019/09/27 Python
Python常用库大全及简要说明
2020/01/17 Python
python GUI库图形界面开发之PyQt5图片显示控件QPixmap详细使用方法与实例
2020/02/27 Python
利用Python实现斐波那契数列的方法实例
2020/07/26 Python
jupyter notebook指定启动目录的方法
2021/03/02 Python
简单掌握CSS3中resize属性的用法
2016/04/01 HTML / CSS
DKNY品牌官网:纽约大都会时尚风格
2016/10/20 全球购物
工作中的自我评价如何写好
2013/10/28 职场文书
如何写好建议书
2014/03/13 职场文书
计算机毕业生自荐信
2014/06/12 职场文书
年度考核表个人总结
2015/03/06 职场文书
毕业论文答辩开场白和结束语
2015/05/27 职场文书
Redis6.0搭建集群Redis-cluster的方法
2021/05/08 Redis
golang三种设计模式之简单工厂、方法工厂和抽象工厂
2022/04/10 Golang