python遍歷某目錄的下兩層目錄,並查詢指定型別檔案,複製到上層資料夾
阿新 • • 發佈:2018-12-19
問題描述:當前目錄包含多層下級目錄,且下級目錄中各存在一個.avi檔案,每次訪問需要點選到每個下級目錄訪問一個檔案,操作複雜,且不夠直觀,所以寫了個指令碼將各個下級目錄下的avi檔案統一複製到上層目錄,直觀展示和查閱。
問題截圖
當前存在多個目錄
每個目錄裡面都有部分相關格式的檔案
逐一開啟訪問較麻煩,且不夠直觀
實現程式碼
// An highlighted block
# -*- coding: utf-8 -*-
'''
# -*- coding: utf-8 -*-
'''
用途:
遍歷某目錄的下兩層目錄,並查詢指定型別檔案,複製到上層資料夾
'''
import shutil,os
allfile =[]
def get_dir(path,fileType):
'''
:param path: 路徑
:param fileType: 需要複製的檔案型別(.mkv或.avi等,前面需要加.)
:return:null
'''
#檢視當前目錄檔案列表(包含資料夾)
allfilelist = os.listdir(path)
print(allfilelist)
for file in allfilelist:
filepath = os.path.join(path, file)
#判斷是否是資料夾,如果是則繼續遍歷,否則列印資訊
if os.path. isdir(filepath):
allfilelist2 = os.listdir(filepath)
for file2 in allfilelist2:
filepath3 = os.path.join(filepath, file2)
#判斷檔案是否以.avi結尾
if filepath3.endswith(fileType):
print('列印檔案路徑:'+filepath3)
#複製filepath3檔案到path目錄
shutil.copy(filepath3, path)
else:
print('不是資料夾,繼續查詢...')
if __name__ == '__main__':
path = 'D:\\project\\demo'
get_dir(path,'.avi')
本人是個菜鳥,大神求不噴。。。。。