Python實(shí)現(xiàn)刪除重復(fù)視頻文件的方法詳解
Python自動(dòng)化辦公之刪除重復(fù)的視頻文件
獲取所有文件路徑
import os
import filecmp
file_list=[]
new_list=[]
path=r"F:\FileRecv\刪除文件測(cè)試"
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)方法來獲取所有文件名,循環(huán)添加進(jìn)一個(gè)列表。
獲取所有重復(fù)文件,添加到一個(gè)列表
# 同時(shí)遍歷file_list列表的下標(biāo)和元素
for index,file_name1 in enumerate(file_list):
# 每循環(huán)一次就切片生成file_name1之后的列表file_list2
file_list2 = file_list[index +1:]
# 如果生成的file_list2列表里只有一個(gè)文件,兩兩對(duì)比不成立時(shí) 就停止循環(huán)
if len(file_list2) == 1:
break
# 遍歷每一個(gè)file_list2 下的文件與file_name1文件做比對(duì)
for file_name2 in file_list2:
res1 = filecmp.cmp(file_name1,file_name2, shallow=True)
# print(f'{file_name1}和{file_name1}對(duì)比')
??????? #如果對(duì)比相同
if res1:
#添加進(jìn)準(zhǔn)備刪除的集合
new_set.add(file_name1)
print(new_set)
效果圖:

代碼說明:這里主要是循環(huán)取值的應(yīng)用,以及用到了filecmp這個(gè)文件對(duì)比庫(kù)。
刪除重復(fù)文件
#刪除集合里的文件
for i in new_set:
os.remove(i)
效果圖:
刪除前

刪除后

filecmp庫(kù)知識(shí)拓展:
filecmp是python內(nèi)置的一個(gè)模塊,用于比較文件及文件夾的內(nèi)容。
filecmp由兩個(gè)主要的方法,filecmp.cmp(f1, f2, [shallow])和filecmp.cmpfiles(a, b, common, [shallow])。
1、如果單純比較兩個(gè)文件是否相同,可以通過filecmp.cmp(f1, f2, shallow=True)實(shí)現(xiàn)。其中f1、f2是文件名,shallow=True,則通過文件的元信息比較是否一致,如果是False,則比較兩個(gè)文件內(nèi)容。
2、如果非遞歸比較兩個(gè)目錄中的一組文件,可以選擇通過filecmp.cmpfiles(dir1, dir2, common, shallow=True)實(shí)現(xiàn)。其中dir1、dir2是兩個(gè)文件夾,common是list,里面是需要比較的共同文件名稱。
到此這篇關(guān)于Python實(shí)現(xiàn)刪除重復(fù)視頻文件的方法詳解的文章就介紹到這了,更多相關(guān)Python刪除重復(fù)視頻文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python 根據(jù)時(shí)間來生成唯一的字符串方法
今天小編就為大家分享一篇python 根據(jù)時(shí)間來生成唯一的字符串方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-01-01
Python 搭建Web站點(diǎn)之Web服務(wù)器與Web框架
這篇文章主要介紹了Python 搭建Web站點(diǎn)系列文章的第一篇,主要給大家簡(jiǎn)單介紹Web服務(wù)器與Web框架的相關(guān)資料,需要的朋友可以參考下2016-11-11
numpy展平數(shù)組ndarray.flatten()詳解
這篇文章主要介紹了numpy展平數(shù)組ndarray.flatten()詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06
Python calendar日歷模塊的應(yīng)用案例演示
calendar模塊是python用來處理日歷的模塊,通過不同的api和格式輸出多種形式的日歷格式,下面就通過不同的api和參數(shù)來輸出和學(xué)習(xí)calendar模塊的用法2023-06-06
基于Python+Tkinter實(shí)現(xiàn)一個(gè)簡(jiǎn)易計(jì)算器
Tkinter作為Python的標(biāo)準(zhǔn)庫(kù),是非常流行的Python GUI工具,同時(shí)也是非常容易學(xué)習(xí)的。本文將利用Tkinter繪制一個(gè)簡(jiǎn)單的計(jì)算器,感興趣的可以試一試2022-01-01
python基于Tkinter庫(kù)實(shí)現(xiàn)簡(jiǎn)單文本編輯器實(shí)例
這篇文章主要介紹了python基于Tkinter庫(kù)實(shí)現(xiàn)簡(jiǎn)單文本編輯器,實(shí)例分析了Python使用Tkinter庫(kù)實(shí)現(xiàn)簡(jiǎn)單桌面應(yīng)用程序的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-05-05
Python自定義函數(shù)的創(chuàng)建、調(diào)用和函數(shù)的參數(shù)詳解
這篇文章主要介紹了Python自定義函數(shù)的創(chuàng)建、調(diào)用和函數(shù)的參數(shù)、變量作用域等常見問題,需要的朋友可以參考下2014-03-03

