您好,登錄后才能下訂單哦!
小編給大家分享一下使用Python實現從各個子文件夾中復制指定文件的案例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
之前用來整理圖片的小程序,拿來備忘,算是使用Python復制文件的一個例子。
# -*- coding: utf-8 -*- #程序用來拷貝文件并輸出圖片采集日期等其他信息到Excel中 #文件夾結構: #2016_07_07 # -Data_07_07_001 # -Random1 # -image001_co.pgm # -image001_c1.pgm # -image002_co.pgm # -image002_c1.pgm # -…… # -Random2 # -…… # -Data_07_07_002 # -Data_07_07_003 # -…… #所以我們只是拷貝每個子文件夾中,Random1文件夾中的_co.pgm數據 import os import re import xlwt hang=0 #遞歸復制文件夾內的文件 def copyFiles(sourceDir,targetDir): global hang #全局變量,記錄即將寫入Excel的行號 worksheet.write(hang, 0, label = sourceDir) for file in os.listdir(sourceDir): frames = '('+file[file.find('_')+1:]+')' #待寫入Excel中的數據 sourceDir1 = os.path.join(sourceDir,file) #路徑名拼接 targetDir1 = os.path.join(targetDir,file) for file in os.listdir(sourceDir1): sourceDir2 = os.path.join(sourceDir1,file) #忽略某些特定的子文件夾 if sourceDir2.find("Random1")>0: #列出源目錄文件和文件夾 count= -1 for file in os.listdir(sourceDir2): #拼接完整路徑 if re.search('_c0.pgm',file): count+=1 sourceFile = os.path.join(sourceDir2,file) targetFile = os.path.join(targetDir1,file) if os.path.isfile(sourceFile): if not os.path.exists(targetDir1): os.makedirs(targetDir1) if not os.path.exists(targetFile) or (os.path.exists(targetFile) and (os.path.getsize(targetFile) != os.path.getsize(sourceFile))): open(targetFile, "wb").write(open(sourceFile, "rb").read()) print targetFile+" copy succeeded" frames = '0-'+str(count)+frames worksheet.write(hang, 1, label = 1) worksheet.write(hang, 2, label = frames) hang+=1 print frames workbook = xlwt.Workbook() worksheet = workbook.add_sheet('My Worksheet') copyFiles("F:/2016_07_07","F:/07_07") workbook.save('auto_book.xls') print 'end'
以上是“使用Python實現從各個子文件夾中復制指定文件的案例”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。