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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 等价无穷小公式_高数八个重要极限公式

    等价无穷小公式_高数八个重要极限公式

    2022年8月11日
    17
  • DM7.0在VM-中标麒麟NeoKylin虚拟机上安装[通俗易懂]

    DM7.0在VM-中标麒麟NeoKylin虚拟机上安装[通俗易懂]DM7.0在VM-中标麒麟虚拟机上安装一、环境准备(VM安装中标麒麟虚拟机)1、安装vm14+中标麒麟6(NeoKylinLinxServer6forx86-64操作系统)挂载信息:注意点:具体过程可参考一下文章【磁盘分区】https://jingyan.baidu.com/article/15622f247dd805fdfcbea5e0.html【VM下安…

    2022年8月10日
    36
  • android 7 uc flash,UC浏览器7.2版新增加FLASH游戏支持功能[通俗易懂]

    android 7 uc flash,UC浏览器7.2版新增加FLASH游戏支持功能[通俗易懂]一直以来,FLASH游戏都是手机的一个硬伤,比如当前令人疯狂的偷菜游戏,一直以来也只能玩纯文字版或者图文版,而不能在手机上实现电脑一样的体验。就在5月19日,国内著名的手机浏览器UC发布了7.2正式版,其革命性的应用了FLASH10技术,使得手机能够完美支持FLASH游戏,彻底改变了开篇所说到的窘境。小编在新版本发布的第一时间,就对7.2正式版进行了“尝鲜”,让我们一起来看看UC浏览器FLASH的…

    2022年6月3日
    67
  • Typescript 教程

    Typescript 教程https://zhongsp.gitbooks.io/typescript-handbook/content/https://ts.xcatliu.com/es6入门http://es6.ruanyifeng.com/#docs/string#%E6%A8%A1%E6%9D%BF%E5%AD%97%E7%AC%A6%E4%B8%B2

    2025年7月30日
    4
  • 【京东商城首页实战2】导航条制作(1)[通俗易懂]

    【京东商城首页实战2】导航条制作(1)[通俗易懂]接下来,开始制作京东的导航条。效果如下图:图1业务分析:1.通栏盒子,并且有背景颜色2.有版心。3.版心里面包含左右浮动的两个盒子。4.有下拉效果的盒子后面,有三角形标志。5.右边的盒子里面包含几个li标签。分析完之后,对整个头部的构架和要实现的功能都有简单的了解,下面就是开始一步一步实现这些业务。1.制作一个通栏的盒子,并设置背景颜色。html代码:<

    2022年7月22日
    12
  • AngularJS进阶(二)AngularJS路由问题解决

    AngularJS进阶(二)AngularJS路由问题解决AngularJS路由问题解决遇到了一个棘手的问题:点击优惠详情时总是跳转到药店详情页面中去。再加一层地址解决了,但是后来发现问题还是来了:Couldnotresolve’yhDtlMaintain/yhdetail’fromstate’yhMaintain’药店详情http://192.168.1.118:8088/lmapp/index.html#/0优惠券详情

    2022年7月25日
    10

发表回复

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

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