文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python实现删除重复视频文件的方法详解

2024-04-02 19:55

关注

Python自动化办公之删除重复的视频文件

获取所有文件路径

import os
import filecmp
file_list=[]
new_list=[]
path=r"F:\FileRecv\删除文件测试"
for a,b,c in os.walk(path):
#     print(a)
    for j in c:
        file=a+'\\'+j
#         print(file)
        file_list.append(file)

效果图:

代码说明:使用os.walk(path)方法来获取所有文件名,循环添加进一个列表。

获取所有重复文件,添加到一个列表

# 同时遍历file_list列表的下标和元素
for index,file_name1 in enumerate(file_list):
    
    # 每循环一次就切片生成file_name1之后的列表file_list2
    file_list2 = file_list[index +1:]
    
    # 如果生成的file_list2列表里只有一个文件,两两对比不成立时 就停止循环
    if len(file_list2) == 1: 
        break
        
    # 遍历每一个file_list2 下的文件与file_name1文件做比对
    for file_name2 in file_list2: 
        res1 = filecmp.cmp(file_name1,file_name2, shallow=True)
#      print(f'{file_name1}和{file_name1}对比')

​​​​​​​        #如果对比相同
        if res1:
            
            #添加进准备删除的集合
            new_set.add(file_name1)
print(new_set)

效果图:

代码说明:这里主要是循环取值的应用,以及用到了filecmp这个文件对比库。

删除重复文件

#删除集合里的文件
for i in new_set:
    os.remove(i)

效果图:

删除前

删除后

filecmp库知识拓展:

filecmp是python内置的一个模块,用于比较文件及文件夹的内容。

filecmp由两个主要的方法,filecmp.cmp(f1, f2, [shallow])和filecmp.cmpfiles(a, b, common, [shallow])。

1、如果单纯比较两个文件是否相同,可以通过filecmp.cmp(f1, f2, shallow=True)实现。其中f1、f2是文件名,shallow=True,则通过文件的元信息比较是否一致,如果是False,则比较两个文件内容。

2、如果非递归比较两个目录中的一组文件,可以选择通过filecmp.cmpfiles(dir1, dir2, common, shallow=True)实现。其中dir1、dir2是两个文件夹,common是list,里面是需要比较的共同文件名称。

到此这篇关于Python实现删除重复视频文件的方法详解的文章就介绍到这了,更多相关Python删除重复视频文件内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯