您好,登錄后才能下訂單哦!
這篇文章主要介紹“Python如何實現復制圖片到指定文件夾并按順序重新命名”,在日常操作中,相信很多人在Python如何實現復制圖片到指定文件夾并按順序重新命名問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python如何實現復制圖片到指定文件夾并按順序重新命名”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
該數據集有360個文件夾
每個文件夾下面有數量不等的照片:
解決代碼如下:
import os import shutil path2 = r"F:\cyclegan\新建文件夾\Dataset_Part1" pic=os.listdir(path2) 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")
使用兩個for循環即可解決問題:
1)os.listdir(path)方法用于返回指定的文件夾包含的文件或文件夾的名字的列表。這里輸入print(len(pics))就可以返回這個文件夾中文件的數量。
2)shutil.copy(path2,path3)把path2的文件復制到path3
3)寫path路徑的時候,如何其中存在循環的變量i作為名稱的話(比如1.jpg,2.jpg…),i前面一定要有str,不然會報錯(也就是將int型轉為str型)
當然還遇到了另外一個問題,就是某個文件夾里的照片多了,我需要刪除一些。
比如2000+張挑選344張,復制到另外一個文件夾。
代碼解決如下:
import os import shutil import random path2 = r"F:\cyclegan\新建文件夾\zong2" pic=os.listdir(path2) j=0 for i in range(1,345): number = random.randint(1,len(pic)) j=j+1 shutil.copy(path2 + "/" + str(number) + ".jpg", "F:/cyclegan/新建文件夾/testA" + "/" + str(j) + ".jpg")
1)這里使用隨機數進行動態選擇 random。random.randint用來生成整數
2)shutil.copy依然是復制
到此,關于“Python如何實現復制圖片到指定文件夾并按順序重新命名”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。