删掉一个文件夹相对于另一个文件夹多出的文件

path1是一组图片,path2是标记图片对应的XML文件,

path2和path1本应该所有文件的文件名都相同(不包括后缀),但是path2不小心混入了一些其他文件,

现在要删掉path2下多出的文件:

 1 # coding=UTF-8
 2 import os
 3 
 4 def find(path):
 5     data = []
 6     for root, dirs, files in os.walk(path):
 7         for file in files:
 8             data.append(os.path.splitext(file)[0])
 9     return data
10 
11 def redundant(path, data):
12     extra = []
13     for root, dirs, files in os.walk(path):
14         for file in files:
15             name = os.path.splitext(file)[0]
16             if name not in data:
17                 extra.append(name)
18     return extra
19 
20 def removal(path, data):
21     for root, dirs, files in os.walk(path):
22         for file in files:
23             name = os.path.splitext(file)[0]
24             if name not in data:
25                 os.remove(root + '/' + file)
26 
27 path1 = 'C:/Users/Administrator/Desktop/7.20/1'
28 path2 = 'C:/Users/Administrator/Desktop/7.20/xml1'
29 
30 #此目录下所有文件名(不包括后缀)放入data列表
31 data = find('path1')
32 #此目录相比上一个目录多出的文件名
33 extra = redundant('path2', data)
34 
35 print(len(extra))
36 #删掉多出的文件
37 removal('path2', data)

 

转载于:https://www.cnblogs.com/lxc1910/p/9342425.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值