Python 中修改文件名的方法

在 Python 中,我们可以使用 os 模块中的 rename() 函数来修改文件名,以下是详细的技术教学:

Python 中修改文件名的方法
(图片来源网络,侵删)

1、我们需要导入 os 模块,在 Python 代码的开头添加以下代码:

import os

2、使用 os.rename() 函数修改文件名,这个函数有两个参数:旧文件名和新文件名,我们想要将名为 "old.txt" 的文件重命名为 "new.txt",可以使用以下代码:

os.rename("old.txt", "new.txt")

3、如果需要修改文件夹中的文件名,可以使用 os.path.join() 函数将文件夹路径和文件名连接起来,我们想要将名为 "folder" 的文件夹中的 "old.txt" 文件重命名为 "new.txt",可以使用以下代码:

folder_path = "folder"
old_file_name = "old.txt"
new_file_name = "new.txt"
old_file_path = os.path.join(folder_path, old_file_name)
new_file_path = os.path.join(folder_path, new_file_name)
os.rename(old_file_path, new_file_path)

4、如果目标文件已经存在,可以使用 os.rename() 函数的第三个可选参数来覆盖已存在的文件,我们想要将名为 "folder" 的文件夹中的 "old.txt" 文件重命名为 "new.txt",并覆盖已存在的同名文件,可以使用以下代码:

folder_path = "folder"
old_file_name = "old.txt"
new_file_name = "new.txt"
old_file_path = os.path.join(folder_path, old_file_name)
new_file_path = os.path.join(folder_path, new_file_name)
os.rename(old_file_path, new_file_path, overwrite=True)

5、如果需要批量修改文件夹中的文件名,可以使用 os.listdir() 函数获取文件夹中的所有文件名,然后使用循环遍历每个文件名并修改它,我们想要将名为 "folder" 的文件夹中的所有 "old." 开头的文件重命名为 "new." 开头的文件,可以使用以下代码:

folder_path = "folder"
prefix = "old."
suffix = "new."
for file_name in os.listdir(folder_path):
    if file_name.startswith(prefix):
        old_file_path = os.path.join(folder_path, file_name)
        new_file_name = suffix + file_name[len(prefix):]
        new_file_path = os.path.join(folder_path, new_file_name)
        os.rename(old_file_path, new_file_path)

6、如果需要保留原始文件名作为新文件名的一部分,可以在新文件名中插入原始文件名,我们想要将名为 "folder" 的文件夹中的所有 "old." 开头的文件重命名为 "new原文件名." 格式的文件,可以使用以下代码:

folder_path = "folder"
prefix = "old."
suffix = "原文件名."
for file_name in os.listdir(folder_path):
    if file_name.startswith(prefix):
        old_file_path = os.path.join(folder_path, file_name)
        new_file_name = suffix + file_name[len(prefix):] + "原文件名" + file_name[len(prefix):] + "." + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file_name[len(prefix):4:1] + file

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/473658.html

(0)
未希新媒体运营
上一篇 2024-04-14 15:53
下一篇 2024-04-14 15:54

相关推荐

发表回复

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

云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入