Python遍历移动多层指定文件夹文件
原创
©著作权归作者所有:来自51CTO博客作者wx63dcd9d7dd8a8的原创作品,请联系作者获取转载授权,否则将追究法律责任
Python遍历移动多层指定文件夹文件
- 前言
- 前提条件
- 相关介绍
- 实验环境
- Python遍历多层文件夹重命名文件
前言
- 本文是个人使用Python遍历移动多层指定文件夹文件的电子笔记,由于水平有限,难免出现错漏,敬请批评改正。
- 更多精彩内容,可点击进入我的个人主页查看
前提条件
相关介绍
- Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
- Python OS模块是负责程序与操作系统的交互,提供了访问操作系统底层的接口和非常丰富的方法用来处理文件和目录。
实验环境
Python遍历多层文件夹重命名文件
├─1
│ ├─1
│ │ 1_1_Image-0000.bmp
│ │ 1_1_Image-0001.bmp
│ │
│ └─2
│ 1_2_Image-0000.bmp
│ 1_2_Image-0001.bmp
│
├─2
│ ├─1
│ │ 2_1_Image-0000.bmp
│ │ 2_1_Image-0001.bmp
│ │
│ └─2
│ 2_2_Image-0000.bmp
│ 2_2_Image-0001.bmp
│
└─images
代码实现
import os
import shutil
def move(src_path,target_path):
filenames = os.listdir(src_path)
# print(filenames)
src_path_split = src_path.split('\\')
# print(src_path_split)
for filename in filenames:
filename_path = os.path.join(src_path,filename)
shutil.move(filename_path, target_path) # 移动到目标文件夹
if __name__=="__main__":
target_path = 'images'# 要移到的目的文件夹
first_dirlist = os.listdir()
first_dirlist = [i for i in first_dirlist if not i.endswith('.py')] # 获得第二层文件目录列表
first_dirlist.remove(target_path) # 跳过target_path文件夹
# print(first_dirlist)
for dir1 in first_dirlist: # 遍历第一层文件目录列表
second_dirlist = os.listdir(dir1) # 获得第二层文件目录列表
# print(second_dirlist)
for dir2 in second_dirlist: # 遍历第二层文件目录列表
# print(dir2 =='cemian1')
src_path = os.path.join(dir1,dir2) # 最终文件路径
# print(src_path)
move(src_path,target_path)
输出结果
├─1
├─2
├─images
│ 1_1_Image-0000.bmp
│ 1_1_Image-0001.bmp
│ 1_2_Image-0000.bmp
│ 1_2_Image-0001.bmp
│ 2_1_Image-0000.bmp
│ 2_1_Image-0001.bmp
│ 2_2_Image-0000.bmp
│ 2_2_Image-0001.bmp