Python文件夾批處理操作代碼實(shí)例
更新時(shí)間:2020年07月21日 10:37:53 作者:Maddock
這篇文章主要介紹了Python文件夾批處理操作代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
如圖所示,有一個(gè)test文件夾,里面有3個(gè)子文件夾,每個(gè)子文件夾中有若干圖片文件
#場景1 讀取一個(gè)文件夾中所有文件,存入到一個(gè)list表中
#coding:utf-8 from __future__ import absolute_import from __future__ import division from __future__ import print_function import numpy as np import os import sys import math import numpy import time import argparse import random import cv2 def findAllfile(path, allfile): filelist = os.listdir(path) for filename in filelist: filepath = os.path.join(path, filename) if os.path.isdir(filepath): #print(filepath) findAllfile(filepath, allfile) else: allfile.append(filepath) return allfile #場景1 讀取一個(gè)文件夾中所有文件,存入到一個(gè)list表中 def process1(srcpath, imgprocess_result): #遍歷圖像文件夾 image_files = findAllfile(srcpath,[]) #image_files為所有文件的list #判斷 目錄是否存在,存在就刪除,并且重建 if os.path.exists(imgprocess_result): os.system("rm -rf " + imgprocess_result) if not os.path.isdir(imgprocess_result): # Create the log directory if it doesn't exist os.makedirs(imgprocess_result) #是否隨機(jī)打亂文件順序 #random.shuffle(image_files) #遍歷所有 for facepath in image_files: print("原始文件路徑:", facepath) #獲取文件名稱 data_split = facepath.strip().split("/") image_floder = data_split[-2] print("文件所在目錄:", image_floder) image_name = data_split[-1] print("文件名稱:", image_name) image_newfloder = imgprocess_result + "/" + image_floder #判斷 目錄是否存在,不存在就重建 if not os.path.isdir(image_newfloder): # Create the log directory if it doesn't exist os.makedirs(image_newfloder) image_newpath = image_newfloder + "/" + image_name print("處理后的文件路徑:", image_newpath) #開始處理文件 #.............. # # #場景2 首先讀取一個(gè)文件夾中的所有子目錄,然后依次遍歷各個(gè)子目錄的所有文件 def process2(srcpath, imgprocess_result): #找出所有的子目錄 filelist = os.listdir(srcpath) for filename in filelist: filepath = os.path.join(srcpath, filename) if os.path.isdir(filepath): print("原始子目錄路徑:", filepath) image_files = findAllfile(filepath,[]) for facepath in image_files: print("原始文件路徑:", facepath) #獲取文件名稱 data_split = facepath.strip().split("/") image_floder = data_split[-2] print("文件所在目錄:", image_floder) image_name = data_split[-1] print("文件名稱:", image_name) image_newfloder = imgprocess_result + "/" + image_floder #判斷 目錄是否存在,不存在就重建 if not os.path.isdir(image_newfloder): # Create the log directory if it doesn't exist os.makedirs(image_newfloder) image_newpath = image_newfloder + "/" + image_name print("處理后的文件路徑:", image_newpath) #開始處理文件 #.............. # # if __name__ == '__main__': #原始文件夾 srcpath = "/DATA/share/publicdata/face/dmt_face/test" #處理完畢后存放文件 imgprocess_result = "/DATA/share/publicdata/face/dmt_face/imgprocess_result" print("方法1\n\n\n\n") process1(srcpath, imgprocess_result) print("\n\n\n方法2") process2(srcpath, imgprocess_result)
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python單例設(shè)計(jì)模式實(shí)現(xiàn)解析
這篇文章主要介紹了python單例設(shè)計(jì)模式實(shí)現(xiàn)解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01windows下cx_Freeze生成Python可執(zhí)行程序的詳細(xì)步驟
這篇文章主要介紹了windows下cx_Freeze生成Python可執(zhí)行程序的詳細(xì)步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-10-10pyTorch深入學(xué)習(xí)梯度和Linear Regression實(shí)現(xiàn)
這篇文章主要介紹了pyTorch深入學(xué)習(xí),實(shí)現(xiàn)梯度和Linear Regression,文中呈現(xiàn)了詳細(xì)的示例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-09-09python多線程性能測試之快速mock數(shù)據(jù)
這篇文章主要為大家介紹了python多線程性能測試之快速mock數(shù)據(jù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06Python爬蟲進(jìn)階之爬取某視頻并下載的實(shí)現(xiàn)
這篇文章主要介紹了Python爬蟲進(jìn)階之爬取某視頻并下載的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12