Python實(shí)現(xiàn)復(fù)制圖片到指定文件夾并按順序重新命名
最近要做一個(gè)圖像生成的課題,在網(wǎng)上找了一個(gè)混合的數(shù)據(jù)集。這個(gè)數(shù)據(jù)集中一共有360個(gè)文件夾,然后文件夾中有6-9張不等的照片,我的目標(biāo)就是編寫(xiě)python代碼將所有的照片取出來(lái),放到一個(gè)指定的文件夾里,并且從1開(kāi)始按照順序進(jìn)行編號(hào)。
該數(shù)據(jù)集有360個(gè)文件夾

每個(gè)文件夾下面有數(shù)量不等的照片:

解決代碼如下:
import os
import shutil
path1 = r"F:\cyclegan\新建文件夾\Dataset_Part1"
pic=os.listdir(path1)
k=0
for i in range(1,len(pic)):
path="F:/cyclegan/新建文件夾/Dataset_Part1"+"/"+str(i)
pic2 = os.listdir(path)
for j in range(1, len(pic2)):
k=k+1
shutil.copy(path+"/"+str(j)+".jpg", "F:/cyclegan/新建文件夾/zong" + "/" + str(k) + ".jpg")
使用兩個(gè)for循環(huán)即可解決問(wèn)題:
1)os.listdir(path)方法用于返回指定的文件夾包含的文件或文件夾的名字的列表。這里輸入print(len(pics))就可以返回這個(gè)文件夾中文件的數(shù)量。
2)shutil.copy(path1,path2)把path1的文件復(fù)制到path2
3)寫(xiě)path路徑的時(shí)候,如何其中存在循環(huán)的變量i作為名稱的話(比如1.jpg,2.jpg…),i前面一定要有str,不然會(huì)報(bào)錯(cuò)(也就是將int型轉(zhuǎn)為str型)
當(dāng)然還遇到了另外一個(gè)問(wèn)題,就是某個(gè)文件夾里的照片多了,我需要?jiǎng)h除一些。
比如2000+張?zhí)暨x344張,復(fù)制到另外一個(gè)文件夾。
代碼解決如下:
import os
import shutil
import random
path1 = r"F:\cyclegan\新建文件夾\zong2"
pic=os.listdir(path1)
j=0
for i in range(1,345):
number = random.randint(1,len(pic))
j=j+1
shutil.copy(path1 + "/" + str(number) + ".jpg", "F:/cyclegan/新建文件夾/testA" + "/" + str(j) + ".jpg")
1)這里使用隨機(jī)數(shù)進(jìn)行動(dòng)態(tài)選擇 random。random.randint用來(lái)生成整數(shù)
2)shutil.copy依然是復(fù)制
到此這篇關(guān)于Python實(shí)現(xiàn)復(fù)制圖片到指定文件夾并按順序重新命名的文章就介紹到這了,更多相關(guān)Python復(fù)制圖片到指定文件夾內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實(shí)現(xiàn)中文文本關(guān)鍵詞抽取的三種方法
文本關(guān)鍵詞抽取,是對(duì)文本信息進(jìn)行高度凝練的一種有效手段,通過(guò)3-5個(gè)詞語(yǔ)準(zhǔn)確概括文本的主題,幫助讀者快速理解文本信息,本文分別采用TF-IDF方法、TextRank方法和Word2Vec詞聚類方法,利用Python語(yǔ)言進(jìn)行開(kāi)發(fā),實(shí)現(xiàn)文本關(guān)鍵詞的抽取,需要的朋友可以參考下2024-01-01
使用SAE部署Python運(yùn)行環(huán)境的教程
這篇文章主要介紹了使用SAE部署Python運(yùn)行環(huán)境的教程,SAE作為新浪的在線軟件部署平臺(tái),在國(guó)內(nèi)擁有一定的性價(jià)比,需要的朋友可以參考下2015-05-05
編寫(xiě)Python小程序來(lái)統(tǒng)計(jì)測(cè)試腳本的關(guān)鍵字
這篇文章主要介紹了編寫(xiě)Python小程序來(lái)統(tǒng)計(jì)測(cè)試腳本的關(guān)鍵字的方法,文中的實(shí)例不僅可以統(tǒng)計(jì)關(guān)鍵字?jǐn)?shù)量,還可以按主關(guān)鍵字來(lái)歸類,需要的朋友可以參考下2016-03-03
PyQt5+serial模塊實(shí)現(xiàn)一個(gè)串口小工具
這篇文章主要為大家詳細(xì)介紹了如何利用PyQt5和serial模塊實(shí)現(xiàn)一個(gè)簡(jiǎn)單的串口小工具,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-01-01
python kmeans聚類簡(jiǎn)單介紹和實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了python kmeans聚類簡(jiǎn)單介紹和實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02
python對(duì)html代碼進(jìn)行escape編碼的方法
這篇文章主要介紹了python對(duì)html代碼進(jìn)行escape編碼的方法,涉及Python中escape方法的使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-05-05
如何使用yolov5輸出檢測(cè)到的目標(biāo)坐標(biāo)信息
YOLOv5是一系列在 COCO 數(shù)據(jù)集上預(yù)訓(xùn)練的對(duì)象檢測(cè)架構(gòu)和模型,下面這篇文章主要給大家介紹了關(guān)于如何使用yolov5輸出檢測(cè)到的目標(biāo)坐標(biāo)信息的相關(guān)資料,需要的朋友可以參考下2022-03-03
Python響應(yīng)對(duì)象text屬性亂碼解決方案
這篇文章主要介紹了Python響應(yīng)對(duì)象text屬性亂碼解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03
Python seek()和tell()函數(shù)的具體使用
本文主要介紹了Python seek()和tell()函數(shù)的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02

