python 將一個文件夾中的多個文件複製到多個新建的文件夾中

前兩天採集了一些數據,數據量2000多張圖片,圖像命名爲0.jpg、1.jpg、2.jpg……爲了分散標註和管理這些數據,新建一些文件夾,文件命名爲0、1、2、3。。。,每個文件夾中存放500張圖片,便於後期標註管理。

     在存圖像的文件夾的上一級目錄,寫python程序:

import os
import shutil

osDir=os.getcwd()
fileDir=osDir+"/all" #圖像保存的路徑
n=0
for image in os.listdir(fileDir):
    name,extension=os.path.splitext(image) #分離文件名字和後綴
    src=fileDir+"/"+image
    try:
       os.makedirs(osDir+"/"+"divert/"+str(int(name)//500),mode=0o777) #創建要保存的路徑,/得到帶小數點的結果,//只獲取結果的整數部分,makedirs可創建定義的每級路徑,makedirs在路徑已存在時會報錯,所以使用try,循環遇到路徑已存在時pass
    except OSError:
       pass
    dst=osDir+"/"+"divert/"+str(int(name)//500)+"/"+image
    shutil.copyfile(src,dst)
    print(image+" is ok! %d images has been copied!"%(n))
    n=n+1

       /得到帶小數點的結果,//只獲取結果的整數部分,makedirs可創建定義的每級路徑,makedirs在路徑已存在時會報錯,所以使用try,循環遇到路徑已存在時pass。

       運行後22248張圖片保存在45個文件夾中,除最後一個文件夾外,每個文件夾500張。

  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章