人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

8行代碼實(shí)現(xiàn)Python文件去重

發(fā)布日期:2022-02-14 18:35 | 文章來源:腳本之家

需求描述

上周突然接到一個(gè)任務(wù),要通過XX網(wǎng)站導(dǎo)出XX年-XX年之間的數(shù)據(jù),導(dǎo)出后的文件名就是對(duì)應(yīng)日期,導(dǎo)出后發(fā)現(xiàn),竟然有的文件大小是一樣,但文件名又沒有重復(fù),所以打開文件看了下,確實(shí)重復(fù)了,原因暫時(shí)不清楚,預(yù)測(cè)是網(wǎng)站的原因,最后發(fā)現(xiàn)大概只有 30% 的數(shù)據(jù)沒有重復(fù)。我淦!


啥也不說,首要任務(wù)還是把那些沒有重復(fù)的文件給篩選出來,或是刪除重復(fù)的文件。文件很多幾百個(gè),通過一個(gè)個(gè)的對(duì)比文件去刪除估計(jì)又要加班,然后突然想到 Python 有個(gè)內(nèi)置的 filecmp 能夠貌似是比較文件的,于是乎就有了這篇文章~

擼代碼ing

導(dǎo)出的文件都是保存在同一文件夾下的,格式也相同。然后,上網(wǎng)查了下 filecmp.cmp() 的用法。

filecmp.cmp(f1, f2, shallow=True)

f1/f2:待比較的兩個(gè)文件路徑。shallow :默認(rèn)為True,即只比較os.stat()獲取的元數(shù)據(jù)(創(chuàng)建時(shí)間,大小等信息)是否相同,設(shè)置為False的話,在對(duì)比文件的時(shí)候還要比較文件內(nèi)容。
from pathlib import Path
import filecmp
path_list = [path for path in Path(r'C:\Users\pc\Desktop\test').iterdir() if path.is_file()]
for front in range(len(path_list) - 1):
 for later in range(front + 1, len(path_list)):
  if filecmp.cmp(path_list[front], path_list[later], shallow=False):
path_list[front].unlink() # 刪除文件
break

為了防止代碼有問題,我先創(chuàng)建了一個(gè) test 文件夾,在文件夾下手動(dòng)創(chuàng)建了6個(gè)文件,1~5中只有1,2,3,4,5對(duì)應(yīng)的數(shù)字內(nèi)容,第6個(gè)為空文件。


之后再將文件全部復(fù)制一份。


▶️運(yùn)行效果

到此這篇關(guān)于8行代碼實(shí)現(xiàn)Python文件去重的文章就介紹到這了,更多相關(guān)Python文件去重內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!

香港快速服務(wù)器

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開通

自選配置、實(shí)時(shí)開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對(duì)1客戶咨詢顧問

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部