使用Python实现文件重命名的三种方法

 更新时间:2025年02月26日 10:17:06   作者:Franpper  
在处理数据集中,我们经常需要对文件进行重命名操作,这篇文章小编为大家总结了几种文件重命名的方法,可以大家一键重命名,有需要的可以了解下

1. 随机命名

这个方法是将文件夹中特定类型文件随机命名,下图是文件原始名称

随机重命名代码如下: 

def fun1(filePath):
    """
    重命名函数fun1
    输入:文件夹路径
    功能:对文件夹中的全部文件进行随机命名
    """
    suffix = '.txt'  # 设置后缀,筛选特定文件以更改名称
    for file in os.listdir(filePath):
        if file.endswith(suffix):
            name = file.split('.')[0]
            suffix = file.split('.')[1]
            salt = ''.join(random.sample(string.ascii_letters + string.digits, 8))  # 随机输出8位由英文字符和数字组成的字符串
            newname = name.replace(name, salt)
            os.rename(os.path.join(path, file), os.path.join(path, newname + '.' + suffix))
    print("End")

重命名效果如下:

2. 基础名+数字序号

但是我想将其改成统一的命名,那么就用这种重命名方法

代码如下:

def fun2(path):
    """
    重命名函数fun2
    输入:文件夹路径
    功能:对某一个文件夹中的某一类文件进行统一命名,命名格式为:基础名+数字序号
    """
    i = 1
    suffix = '.txt'  # 设置后缀,筛选特定文件以更改名称
    for file in os.listdir(path):
        if file.endswith(suffix):
            if os.path.isfile(os.path.join(path, file)):
                new_name = file.replace(file, "name_%d" % i + suffix)  # 根据需要设置基本文件名
                os.rename(os.path.join(path, file), os.path.join(path, new_name))
                i += 1
    print("End")

效果如下,可以看到文件被改成了统一名称 + 数字序号的格式,当然如果你想修改成别的名称,只需将"name_%d"这一句中红字替换为自己的名称即可。

3. 特定字符替换

假如我的文件中都包含相同的字符(如示例中都包含name),但是我想将其更换为别的字符,那么就用这个方法。

代码如下:

def fun3(filePath, old_text, new_text):
    """
    重命名函数fun3
    输入:文件夹路径、需替换的字符、替换后字符
    功能:对文件名中的特定字符进行替换
    """
    for i, j, k in os.walk(filePath):
        for name in k:
            newName = name.replace(old_text, new_text)
            name = i + "\\" + name
            newName = i + "\\" + newName
            os.rename(name, newName)
    print("End")

效果如下,通过方法3将文件中所有“name”替换为了“名字”

4. 完整代码

import os
import random
import string
 
 
def fun1(filePath):
    """
    重命名函数fun1
    输入:文件夹路径
    功能:对文件夹中的全部文件进行随机命名
    """
    suffix = '.txt'  # 设置后缀,筛选特定文件以更改名称
    for file in os.listdir(filePath):
        if file.endswith(suffix):
            name = file.split('.')[0]
            suffix = file.split('.')[1]
            salt = ''.join(random.sample(string.ascii_letters + string.digits, 8))  # 随机输出8位由英文字符和数字组成的字符串
            newname = name.replace(name, salt)
            os.rename(os.path.join(path, file), os.path.join(path, newname + '.' + suffix))
    print("End")
 
 
def fun2(path):
    """
    重命名函数fun2
    输入:文件夹路径
    功能:对某一个文件夹中的某一类文件进行统一命名,命名格式为:基础名+数字序号
    """
    i = 1
    suffix = '.txt'  # 设置后缀,筛选特定文件以更改名称
    for file in os.listdir(path):
        if file.endswith(suffix):
            if os.path.isfile(os.path.join(path, file)):
                new_name = file.replace(file, "name_%d" % i + suffix)  # 根据需要设置基本文件名
                os.rename(os.path.join(path, file), os.path.join(path, new_name))
                i += 1
    print("End")
 
 
def fun3(filePath, old_text, new_text):
    """
    重命名函数fun3
    输入:文件夹路径、需替换的字符、替换字符
    功能:对文件名中的特定字符进行替换
    """
    for i, j, k in os.walk(filePath):
        for name in k:
            newName = name.replace(old_text, new_text)
            name = i + "\\" + name
            newName = i + "\\" + newName
            os.rename(name, newName)
    print("End")
 
 
if __name__ == '__main__':
    path = r'E:\pythonProject\utiltools/'
    # fun1(path)
    # fun2(path)
    fun3(path,  'name', '名字')

到此这篇关于使用Python实现文件重命名的三种方法的文章就介绍到这了,更多相关Python文件重命名内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何使用Python快速生成gif图

    如何使用Python快速生成gif图

    这篇文章主要给大家介绍了关于如何使用Python快速生成gif图的相关资料,我们需要用到 imageio 库,文章通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-02-02
  • python函数不定长参数使用方法解析

    python函数不定长参数使用方法解析

    这篇文章主要介绍了python函数不定长参数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • python算法与数据结构之冒泡排序实例详解

    python算法与数据结构之冒泡排序实例详解

    冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。这篇文章主要介绍了python算法与数据结构-冒泡排序(32)的相关资料,需要的朋友可以参考下
    2019-06-06
  • Python使用vllm处理多模态数据的预处理技巧

    Python使用vllm处理多模态数据的预处理技巧

    本文深入探讨了在Python环境下使用vLLM处理多模态数据的预处理技巧,我们将从基础概念出发,详细讲解文本、图像、音频等多模态数据的预处理方法,重点介绍如何利用vLLM框架高效处理这些数据,需要的朋友可以参考下
    2025-07-07
  • 最新Pygame zero最全集合

    最新Pygame zero最全集合

    这篇文章主要介绍了最新Pygame zero最全集合,通过本文学习知道update函数是pygame zero自带的函数,每秒运行60次,当然也可以修改,本文通过示例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-08-08
  • Python程序中用csv模块来操作csv文件的基本使用教程

    Python程序中用csv模块来操作csv文件的基本使用教程

    这篇文章主要介绍了Python程序中用csv模块来操作csv文件的基本使用教程,csv文件中也是格式化的数据,只不过csv本身没有XML和JSON那么流行...需要的朋友可以参考下
    2016-03-03
  • Python机器学习NLP自然语言处理基本操作新闻分类

    Python机器学习NLP自然语言处理基本操作新闻分类

    本文是Python机器学习NLP自然语言处理系列文章,开始我们自然语言处理 (NLP) 的学习旅程. 本文主要学习NLP自然语言处理基本操作新闻分类
    2021-09-09
  • Pytorch入门之mnist分类实例

    Pytorch入门之mnist分类实例

    这篇文章主要为大家详细介绍了Pytorch入门之mnist分类实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04
  • 使用Python脚本将文字转换为图片的实例分享

    使用Python脚本将文字转换为图片的实例分享

    这篇文章主要介绍了使用Python脚本将文字转换为图片的实例分享,主要用到了PIL库,需要的朋友可以参考下
    2015-08-08
  • 使用Python搭建虚拟环境的配置方法

    使用Python搭建虚拟环境的配置方法

    python 的虚拟环境可以为一个 python 项目提供独立的解释环境、依赖包等资源,既能够很好的隔离不同项目使用不同 python 版本带来的冲突,而且还能方便项目的发布。这篇文章主要介绍了使用Python虚拟环境,需要的朋友可以参考下
    2018-02-02

最新评论