欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)復(fù)制圖片到指定文件夾并按順序重新命名

 更新時(shí)間:2023年03月11日 14:13:01   作者:今天一定要洛必達(dá)  
這篇文章主要為大家詳細(xì)介紹了如何利用Python實(shí)現(xiàn)將360個(gè)文件夾里的照片,全部復(fù)制到指定的文件夾中,并且按照順序重新命名,感興趣的小伙伴可以了解一下

最近要做一個(gè)圖像生成的課題,在網(wǎng)上找了一個(gè)混合的數(shù)據(jù)集。這個(gè)數(shù)據(jù)集中一共有360個(gè)文件夾,然后文件夾中有6-9張不等的照片,我的目標(biāo)就是編寫python代碼將所有的照片取出來(lái),放到一個(gè)指定的文件夾里,并且從1開始按照順序進(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)寫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)文章

最新評(píng)論