gpt4 book ai didi

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

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章Python批处理删除和重命名文件夹的实例由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/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. 遍历目录下每个子文件夹,并列出子文件夹下的文件,默认删除含指定类型的文件夹,不包含指定文件类型的,则提示,是否删除或者重命名文件夹 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/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. 使用子文件夹中第一个文件的文件名作为该子文件夹的名字 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/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批处理删除和重命名文件夹的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我.

原文链接:https://blog.csdn.net/ichenwin/article/details/53576587 。

最后此篇关于Python批处理删除和重命名文件夹的实例的文章就讲到这里了,如果你想了解更多关于Python批处理删除和重命名文件夹的实例的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com