1. 程式人生 > 程式設計 >Python程式設計快速上手——選擇性拷貝操作案例分析

Python程式設計快速上手——選擇性拷貝操作案例分析

本文例項講述了Python選擇性拷貝操作。分享給大家供大家參考,具體如下:

問題如下:

編寫一個程式,遍歷一個目錄樹,查詢特的那個拓展名的檔案(如,.jpg或.pdf)。不論這些檔案位置在哪裡,將它們拷貝到一個新的資料夾中

思路如下:

- 程式需要做以下事情:
遍歷檔案目錄樹,並返回相關資料夾及檔案資訊
查詢特定檔名檔案
將找到的特定檔案拷貝到新資料夾
- 程式碼需要做以下事情:
匯入os,shutil模組
input()輸入需要查詢的檔案拓展名,遍歷的資料夾及複製目標資料夾
os.walk(0遍歷目錄樹
filename.endswith('')查詢特定檔名檔案
shutil模組移動,複製相應檔案

拷貝完成反饋結果


程式碼如下:

import os,shutil

fiName = input("請輸入需要遍歷的資料夾地址:")
baseName = input("請輸入需要查詢檔案的拓展名(如:.pdf,.txt,.jpg):")
toName = input("請輸入需要移動到的地址:")

for folderName,_,filenames in os.walk(fiName): 
#os.walk預設返回三個引數,因為第二個引數返回子資料夾用不上,因此設定了 -引數,填充位置
  print('當前遍歷資料夾:' + folderName)
  for filename in filenames:
    if filename.endswith(baseName):
      print("當前資料夾的“{0}”檔案有:{1}".format(baseName,filename))
      filePath = folderName +'\\'+ filename #加上'\\'轉義字元,才是正確的路徑
      shutil.copy(filePath,toName)
      print("拷貝檔案“{0}”到“{1}”成功!".format(baseName,toName))

執行結果如下:

在這裡插入圖片描述

更多關於Python相關內容感興趣的讀者可檢視本站專題:《Python檔案與目錄操作技巧彙總》、《Python文字檔案操作技巧彙總》、《Python資料結構與演算法教程》、《Python函式使用技巧總結》、《Python字串操作技巧彙總》及《Python入門與進階經典教程》

希望本文所述對大家Python程式設計有所幫助。