python实现本地图片转存并重命名的示例代码

yipeiwu_com6年前Python基础

//有1-22个文件夹,各文件夹下有Detect_0文件夹,此文件夹下有source与mask文件夹,目的是将需要获取图片的

文件夹下的图片复制到新的文件夹下并按顺序重命名

import os
import shutil
//删除之前文件夹并新建空文件夹
shutil.rmtree(r'E:\\all_project\\picture')
os.makedirs("E:\\all_project\\picture\\source\\")
os.makedirs("E:\\all_project\\picture\\mask\\")
//确定需要获取图片的文件夹编号
# arr=["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22"]
arr=["1","2"]
source_num=0
mask_num=0
source_new = 1
mask_new = 1
for i in arr:

 source = 'E:\\all_project\\'+i+'\\Detect_0\\source\\'
 source_final = 'E:\\all_project\\picture\\source\\'
 source_ls = os.listdir(source)
 print(source_ls)
 mask = 'E:\\all_project\\'+i+'\\Detect_0\\mask\\'
 mask_final = 'E:\\all_project\\picture\\mask\\'
 mask_ls = os.listdir(mask)
 print(mask_ls)

 source_list = os.listdir(source)
 mask_list = os.listdir(mask)
 source_num += len(source_ls)
 mask_num += len(mask_ls)
 print(source_num)
 print(mask_num)

 old = 1
 while len(os.listdir(source_final)) < source_num:
  oldname = source + str(old) + ".bmp"
  if os.path.exists(oldname):
   newname = source_final + str(source_new) + ".bmp"
   shutil.copyfile(oldname, newname)
   source_new += 1
   print(source_new)
   old += 1
  else:
   old += 1

 old = 1
 while len(os.listdir(mask_final)) < mask_num:

  oldname = mask + str(old) + ".bmp"
  if os.path.exists(oldname):
   newname = mask_final + str(mask_new) + ".bmp"
   shutil.copyfile(oldname, newname)
   mask_new += 1
   old += 1
  else:
   old += 1

以上这篇python实现本地图片转存并重命名的示例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Pandas之ReIndex重新索引的实现

约定: import pandas as pd import numpy as np ReIndex重新索引 reindex()是pandas对象的一个重要方法,其作用是创建一...

Python minidom模块用法示例【DOM写入和解析XML】

本文实例讲述了Python minidom模块用法。分享给大家供大家参考,具体如下: 一、DOM写XML文件 # -*- coding:utf-8 -*- #!python3 #导入...

python常见排序算法基础教程

python常见排序算法基础教程

前言:前两天腾讯笔试受到1万点暴击,感觉浪费我两天时间去牛客网做题……这篇博客介绍几种简单/常见的排序算法,算是整理下。 时间复杂度 (1)时间频度一个算法执行所耗费的时间,从理论上是不...

详解Python中的序列化与反序列化的使用

学习过marshal模块用于序列化和反序列化,但marshal的功能比较薄弱,只支持部分内置数据类型的序列化/反序列化,对于用户自定义的类型就无能为力,同时marshal不支持自引用(递...

wxPython多个窗口的基本结构

如何在一个wxpython APP里面创建两个框架呢?供大家参考,具体内容如下 代码: import ... import ... class MyFrame(wx.Frame):...