您好,登錄后才能下訂單哦!
小編給大家分享一下python如何復制文件到指定目錄,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
這幾天在做一個數據集,由于不是很熟悉Linux下的命令,所以特地用了強大的python來做。我之前有一個數據集但是我只要里面名稱帶有composite和normals的圖片,所以找了網上的文章看到了用shutil.copyfile來實現的方法。
# -*- coding: utf-8 -*- import os,shutil #shutil.copyfile應用,參數必須具體到文件名 def mycopyfile(srcfile,dstfile): if not os.path.isfile(srcfile): print("%s not exit!" % (srcfile)) else: fpath,fname=os.path.split(dstfile) if not os.path.exists(fpath): os.makedirs(fpath) shutil.copyfile(srcfile,dstfile) #print("copy %s" % (srcfile,dstfile)) #這個是找到圖片的實際地址 def find_filepath(dir1_name,dir2_name,i,file_name=''): file_path=os.path.join(dir1_name ,dir2_name ,str(i)+file_name+'.png') return file_path #這個是我自己的實際應用 if __name__=='__main__': dir_name=['airplane_test','bottle_test','bunny_test','car_test','motorbike_test','suzanne_test','teapot_test'] obj=['_composite','_normals'] cnt=0 for i in range(7): direction=dir_name[i] #print(direction) for j in range(400): print(direction,j) source1=find_filepath('intrinsic',direction,j,obj[0]) #源地址 source2=find_filepath('intrinsic',direction,j,obj[1]) #源地址 dst1=find_filepath('image2norm','testA',cnt) #目標地址 dst2=find_filepath('image2norm','testB',cnt) #目標地址 mycopyfile(source1,dst1) mycopyfile(source2,dst2) cnt+=1
值得注意的是,shutil.copyfile(srcfile,dstfile)里面srcfile和dstfile必須是文件名,不能是文件夾。具體應用可以參考上面的main。
如果想要復制文件夾下的全部文件而又不清楚文件的具體數目,可以采用以下os.listdir的方法列出該文件夾下所有文件的名稱,
file_path='./resuls' dirs=os.listdir(file_path) for dir in dirs: print(dir)
以上是“python如何復制文件到指定目錄”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。