首页 > 解决方案 > 定义一个 Python 函数以重命名将名称和路径作为参数传递的文件

问题描述

我想创建一个 python 函数,在其中我将要重命名的一些文件的名称和目录路径作为参数传递;每个def my_fun (name, path): 文件的目录路径都相同。我以这种方式做到了,但我无法将其转换为我所寻找的函数形式。

path = input("tap the complete path where files are")
for name in files_names:
    name = input("insert file name as name.ext")
    old_name = os.path.join(path, files_names)
    new_name = os.path.join(path, name)
    os.rename(old_name, new_name)

标签: pythonfunctionfile-rename

解决方案


如果您希望能够将路径和文件名(名称列表)作为参数传递:

def rn(path, files_names):
    new_name = input("Input the new name: ")
    for i,name in enumerate(files_names):
        old_name = os.path.join(path, name)
        new_name = os.path.join(path, f"{new_name.split('.')[0]}{i}.{new_name.split('.')[1]}")
        os.rename(old_name, new_name)

path = input("tap the complete path where files are")
file_names = ['image.png','car.png','image1.png','photo.png','cake.png']
rn(path, file_names)

这将使用用户输入的内容重命名列表中的所有文件new_name,标记从 开始0


推荐阅读