python 图片重命名_python批量重命名文件

python 图片重命名_python批量重命名文件一个简单的python脚本,用于图片批量重命名,非常简单但是也非常使用!

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

**

python图片批量重命名

**
一个简单的python 脚本,用于图片批量重命名,非常简单但是也非常使用!

使用前记得搭建使用环境,下载相应的包

# -*- coding: utf-8
import os
import os.path
import shutil
from tqdm import tqdm

class Pathroot():

    def __init__(self, root, sort_methods):
        '''初始化文件路径'''
        self.root = root
        self.sort_methods = sort_methods

    def get_path(self):
        ''' 输入路径,获取输入路径下所有文件的完整列表,并以字符串排序'''
        path1 = []
        for parent, dirnames, filenames in os.walk(self.root):
            for filename in filenames:
                currentPath = os.path.join(parent, filename)
                path1.append(currentPath)
        if self.sort_methods == 'str':
            path1.sort(key=lambda x: str(os.path.basename(x).split('/')[-1][:-4]))
        elif self.sort_methods == 'int':
            path1.sort(key=lambda x: int(os.path.basename(x).split('/')[-1][:-4]))
        else:
            print('Please choose correct sort methods!!! str or int')
        return path1


def get_newroot(root, root1 ,name):
    '''在根目录下创建新的文件,返回新的路径并修改名称'''
    new_root = root +'/'+ str(name) +  pic_format
    return new_root


if __name__ == '__main__':

    input_path = input('Please enter the path to the folder : ')
    # 在当前文件夹创建新目录
    new_root = '/'.join(input_path.split('/')[:-1])+ '/new_data'
    os.mkdir(new_root)
    # 获取当前目录下所有图片路径
    path_root = Pathroot(input_path,'str')
    the_total_root = path_root.get_path()
    pic_format = the_total_root[0].split('/')[-1][-4:]
    print('The number of images under the path : {:^10}' .format(str(len(the_total_root))))
    # 重命名且保存在新的目录下
    for i in tqdm(range(len(the_total_root))):
        new_root_1 = get_newroot(new_root,pic_format,i)
        shutil.copy(the_total_root[i] , new_root_1)
    print('The program has ended, please check the results!!!')

终端运行结果如下:
在这里插入图片描述

如果对你有帮助的话,可以为我点个赞!

有什么问题的话,欢迎随时留言,看到必回!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197265.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VUE作用域插槽详解(<slot>、v-slot、slot-scope)「建议收藏」

    什么是插槽?插槽就是子组件中的提供给父组件使用的一个占位符,用表示,父组件可以在这个占位符中填充任何模板代码,如HTML、组件等,填充的内容会替换子组件的标签。插槽显不显示、怎样显示是由父组件来控制的,而插槽在哪里显示就由子组件来进行控制如下代码:在子组件中放一个占位符在父组件中给这个占位符填充内容:展示的效果:现在来看看,如果子组件中没有放插槽,同样的父组件中在子组件中填充内容,会是啥样的:子组件代码无插槽:2.父组件照常填充内容:3.展示的效果:总结:如果

    2022年4月13日
    51
  • IT学生学习指南

    IT学生学习指南本文主要为了计算机相关专业的学生而写。内容是从本博主的工作经验和教学经验当中总结出来的一些干货,涵盖了从大一到大四期间学生所遇到的常见问题,包括如何找到满意的工作、如何选择适合自己的工作岗位、如何制定自己的学习计划、如何分辨自身适合考研还是就业、女生的IT之路怎么走、如何锻炼自己的技术等等大学生最关心的问题。如果大家觉得文本值得一看,那就请推荐给身边那些还在迷茫中的孩子们吧!

    2022年6月4日
    22
  • 线程运行超时处理类

    线程运行超时处理类

    2021年8月17日
    50
  • 王立平–android特权

    王立平–android特权

    2022年1月8日
    39
  • 最新版oracle 11g下载和安装教程

    最新版oracle 11g下载和安装教程学习oracle第一步免不了下载安装Oracle数据库,但是很多人学习时都有通过百度在网上搜索下载的习惯,但是,百度的搜索结果一堆盗版网站,盗版下载地址着实让人头疼,Oracle数据库企业版/标准版是免费对个人学习使用的,因此自己当然要会使用官方正版网站下载安装正版最新的Oracle啦。下载:第一步:去Oracle官网https://www.oracle.com点击下载第二步:…

    2022年5月7日
    162
  • MapReduce 编程不可怕,一篇文章搞定它

    MapReduce 编程不可怕,一篇文章搞定它前言本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和参考文献请见1000个问题搞定大数据技术体系正文需求:WordCount,大数据领域的HelloWorld。Mapperpackagecom.shockang.study.bigdata.mapreduce;importjava.io.IOException;importorg.apache.hadoop.io.IntWr

    2022年6月14日
    28

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号