[python] 批量更改不同文件夾里同名文件夾名字並移動到一起


適合情況:

  • 大的文件夾下有許多個不同文件的不同名字較小文件夾
  • 部分較小文件夾有同名文件夾
    • 例如Windows下有如下形式目錄結構
      • d:\data\A\output
      • d:\data\B\output
      • d:\data\C\output
      • d:\data\D\output
      • d:\data\E\
  • 本程序能夠將所有的output文件夾復制到d:\\all_output文件夾下,且分為$A-ouput, B-output$...
import os,sys
import shutil


def copy_folder(rootpath, dstpath):

    # 讀取文件夾目錄,返回指定的文件夾包含的文件或文件夾的名字的列表
    dirs = os.listdir(rootpath)

    # 將讀取的文件夾名字轉成數組形式
    for dir in dirs:
        # print(dir)

        # 移動符合條件的文件夾並重命名
        if os.path.exists(rootpath + os.path.sep + dir + os.path.sep + 'output'):
            shutil.copytree(rootpath + os.path.sep + dir + os.path.sep + 'output', dstpath + os.path.sep + 'all' + os.path.sep + dir+'-output')
        else:
            continue

if __name__ == '__main__':
    rootpath = 'D:\\data'
    dstpath = 'D:\\all_output'
    copy_folder(rootpath, dstpath)
    print("Finish!!")


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM