python按顺序重命名文件并分类转移到各个文件夹中的实现代码


Posted in Python onJuly 21, 2020

系统
ubuntu20.04
工具
python
要求
文件夹中有22个子文件夹,每个子文件又包含56个文件,要求将每个子文件夹中的第一个文件放到一个新文件夹中,第二个放一个新的中,一直到最后。
解决方案
1.复制源文件

import os
import shutil
#源文件路径
source_path='......'
#复制的新文件的路径
copy_source_path='.....'
#直接复制过去的话,经常会提示文件存在,所以加个判断语句
#判断路径是否存在源文件,如果有则删除
if os.path.exists(copy_source_path):
  shutil.rmtree(copy_source_path)
#复制文件过去
shutil.copytree(source_path,copy_source_path)

保留源文件可以增加自己操作的容错性,并可以检查自己操作是否满足要求,当然也可以直接复制粘贴源文件

2.创建新文件夹

def creat(files):
#创建名称为1~56的新文件夹
  for i in range(1,57):
 	#判断路径是否存在同名文件夹,如果没有则创建
   if not os.path.exists(files +'/' +str(i)):
    os.makedirs(files +'/' +str(i))
#输入路径
creat('......')

3.按顺序命名并转移到新文件中

#上面新文件夹所在路径
target_path='.......'
#总文件夹路径
for file in os.listdir(copy_source_path):
  j=1
  #拼接出文件完整路径
  source_path_1=os.path.join(copy_source_path,file)
  source_list=os.listdir(source_path_1)
  #对获取的文件名排序,否则是乱序修改
  source_list_1=sorted(source_list)
  #子文件夹路径
  for file_1 in source_list_1:
  #源文件地址,这里的源文件我用的是复制的文件
    oldname_path=os.path.join(source_path_1,file_1)
    #新文件夹路径
    for file_2 in os.listdir(target_path):
      if str(j)==file_2:
        target_path_1=os.path.join(target_path,file_2)
        #新文件路径以及新名称,这里新名称我是用的子文件名+文件序号+文件原来名称,而上面的判断语句就是判断文件序号与新文件夹名称是否相同
        newname_path=os.path.join(target_path_1,file +'-'+str(j)+'-'+file_1)
        #renamen指令不仅能重新命名而且不保留源文件以达到转移的目的
        os.rename(oldname_path,newname_path)
    #要对每个子文件夹中的文件顺序命名,注意j所在的循环,不要放错
    j+=1

到此这篇关于python按顺序重命名文件并分类转移到各个文件夹中的实现代码的文章就介绍到这了,更多相关python重命名文件并分类转移到各个文件夹中内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
进一步探究Python中的正则表达式
Apr 28 Python
Python常见异常分类与处理方法
Jun 04 Python
Python二叉树的遍历操作示例【前序遍历,中序遍历,后序遍历,层序遍历】
Dec 24 Python
浅谈Python中的可迭代对象、迭代器、For循环工作机制、生成器
Mar 11 Python
Django模型序列化返回自然主键值示例代码
Jun 12 Python
python多线程并发实例及其优化
Jun 27 Python
浅谈python已知元素,获取元素索引(numpy,pandas)
Nov 26 Python
Python迭代器模块itertools使用原理解析
Dec 11 Python
浅谈Python __init__.py的作用
Oct 28 Python
Python爬虫scrapy框架Cookie池(微博Cookie池)的使用
Jan 13 Python
PyTorch 如何检查模型梯度是否可导
Jun 05 Python
Python OpenCV超详细讲解读取图像视频和网络摄像头
Apr 02 Python
Pandas的Apply函数具体使用
Jul 21 #Python
Python pandas对excel的操作实现示例
Jul 21 #Python
浅谈Python爬虫原理与数据抓取
Jul 21 #Python
用于ETL的Python数据转换工具详解
Jul 21 #Python
Python Tricks 使用 pywinrm 远程控制 Windows 主机的方法
Jul 21 #Python
Python json格式化打印实现过程解析
Jul 21 #Python
基于python实现删除指定文件类型
Jul 21 #Python
You might like
人工智能开始玩《星际争霸2》 你的操作跟得上吗?
2017/08/11 星际争霸
php中的数组操作函数整理
2008/08/18 PHP
php数组合并的二种方法
2014/03/21 PHP
php+ajax 实现输入读取数据库显示匹配信息
2015/10/08 PHP
隐藏Nginx或Apache以及PHP的版本号的方法
2016/01/03 PHP
PHP读MYSQL中文乱码的快速解决方法
2016/10/01 PHP
javascript实现倒计时N秒后网页自动跳转代码
2014/12/11 Javascript
一个简单不报错的summernote 图片上传案例
2016/07/11 Javascript
Javascript函数中的arguments.callee用法实例分析
2016/09/16 Javascript
微信小程序入门教程
2016/11/18 Javascript
JS变量及其作用域
2017/03/29 Javascript
vue-cli webpack 开发环境跨域详解
2017/05/18 Javascript
手把手搭建安装基于windows的Vue.js运行环境
2017/06/12 Javascript
react中使用swiper的具体方法
2018/05/15 Javascript
使用vue-cli导入Element UI组件的方法
2018/05/16 Javascript
vue组件化中slot的基本使用方法
2019/05/01 Javascript
vue 实现v-for循环回来的数据动态绑定id
2019/11/07 Javascript
JS前端广告拦截实现原理解析
2020/02/17 Javascript
[16:27]DOTA2 HEROS教学视频教你分分钟做大人-艾欧
2014/06/11 DOTA
在Linux系统上部署Apache+Python+Django+MySQL环境
2015/12/24 Python
解决安装tensorflow遇到无法卸载numpy 1.8.0rc1的问题
2018/06/13 Python
tensorflow: 查看 tensor详细数值方法
2018/06/13 Python
python将list转为matrix的方法
2018/12/12 Python
Python基于滑动平均思想实现缺失数据填充的方法
2019/02/21 Python
pandas实现将dataframe满足某一条件的值选出
2019/06/12 Python
python实现的登录与提交表单数据功能示例
2019/09/25 Python
西班牙在线光学:Visual-Click
2020/06/22 全球购物
总经理办公室主任岗位职责
2013/11/12 职场文书
军人违纪检讨书
2014/02/04 职场文书
安全教育月活动总结
2014/05/05 职场文书
企业金融服务方案
2014/06/03 职场文书
2015年度护士个人工作总结
2015/04/09 职场文书
班主任远程培训研修日志
2015/11/13 职场文书
反邪教学习心得体会
2016/01/15 职场文书
大学生奖学金获奖感言(范文)
2019/08/15 职场文书
vue el-table实现递归嵌套的示例代码
2022/08/14 Vue.js