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字符转换
Sep 06 Python
Python多线程编程(六):可重入锁RLock
Apr 05 Python
Python实现的选择排序算法原理与用法实例分析
Nov 22 Python
urllib和BeautifulSoup爬取维基百科的词条简单实例
Jan 17 Python
详解Python 实现元胞自动机中的生命游戏(Game of life)
Jan 27 Python
Python装饰器简单用法实例小结
Dec 03 Python
Python实现一个数组除以一个数的例子
Jul 20 Python
Python如何把Spark数据写入ElasticSearch
Apr 18 Python
Python request使用方法及问题总结
Apr 26 Python
python多线程semaphore实现线程数控制的示例
Aug 10 Python
Python爬虫实战之爬取京东商品数据并实实现数据可视化
Jun 07 Python
OpenCV-Python实现人脸美白算法的实例
Jun 11 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
从MySQL数据库表中取出随机数据的代码
2007/09/05 PHP
比较全面的PHP数组的使用方法小结
2010/09/23 PHP
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
2011/12/19 PHP
PHP简单实现无限级分类的方法
2016/05/13 PHP
PHP使用curl函数发送Post请求的注意事项
2016/11/26 PHP
JavaScript性能优化 创建文档碎片(document.createDocumentFragment)
2010/07/13 Javascript
Jquery响应回车键直接提交表单操作代码
2014/07/25 Javascript
自制微信公众号一键排版工具
2016/09/22 Javascript
Vue与Node.js通过socket.io通信的示例代码
2018/07/25 Javascript
javascript实现留言板功能
2020/02/08 Javascript
jQuery编写QQ简易聊天框
2020/08/27 jQuery
TypeScript 运行时类型检查补充工具
2020/09/28 Javascript
一起来了解一下JavaScript的预编译(小结)
2021/03/01 Javascript
[06:49]2018DOTA2国际邀请赛寻真——VirtusPro傲视群雄
2018/08/12 DOTA
python实现根据月份和日期得到星座的方法
2015/03/27 Python
Python实现获取操作系统版本信息方法
2015/04/08 Python
用Python创建声明性迷你语言的教程
2015/04/13 Python
Python全局变量操作详解
2015/04/14 Python
介绍Python中的fabs()方法的使用
2015/05/14 Python
利用Python批量压缩png方法实例(支持过滤个别文件与文件夹)
2017/07/30 Python
Python实现图片转字符画的示例
2017/08/22 Python
Sublime开发python程序的示例代码
2018/01/24 Python
Python中max函数用于二维列表的实例
2018/04/03 Python
Python Pexpect库的简单使用方法
2019/01/29 Python
python 进程的几种创建方式详解
2019/08/29 Python
Python Selenium参数配置方法解析
2020/01/19 Python
python热力图实现简单方法
2021/01/29 Python
澳大利亚小众服装品牌:Maurie & Eve
2018/03/27 全球购物
红色连衣裙精品店:Red Dress Boutique
2018/08/11 全球购物
加拿大的标志性百货公司:Hudson’s Bay(哈得逊湾)
2019/09/03 全球购物
涉外经济法专业毕业生推荐信
2013/11/24 职场文书
运动会入场词50字
2014/02/20 职场文书
继承公证书样本
2014/04/04 职场文书
教师演讲稿大全
2014/05/16 职场文书
小学英语教师先进事迹
2014/05/28 职场文书
银行员工犯错检讨书
2014/09/16 职场文书