您的位置:

Python os.rename 文件重命名的完全指南

一、基本介绍

os.rename()是Python中重命名文件的函数,用于修改文件或文件夹的名称。它在os模块中定义,并采用旧的文件名和新的文件名作为参数。

    import os

    os.rename("旧文件名", "新文件名")

其中"旧文件名"和"新文件名"都需要以字符串的形式传递给os.rename()函数。例如:

    os.rename("myFile.txt", "newFile.txt")

上面的代码将把名为"myFile.txt"的文件重命名为"newFile.txt"。

二、重命名文件夹

os.rename()还可以用于重命名文件夹。例如,以下代码将把名为"oldFolder"的文件夹重命名为"newFolder":

    os.rename("oldFolder", "newFolder")

请注意,这只会重命名文件夹本身,而不重命名文件夹中的文件。

如果你想重命名文件夹中的文件,你需要使用os模块中的其他函数,如os.listdir()和os.path.join()。

三、重命名多个文件

如果你需要重命名多个文件,可以使用for循环遍历文件名列表,并依次重命名每个文件。

    import os

    fileList = ["file1.txt", "file2.txt", "file3.txt"]

    for file in fileList:
        os.rename(file, "new_" + file)

上面的代码将把名为"file1.txt"、"file2.txt"和"file3.txt"的文件依次重命名为"new_file1.txt"、"new_file2.txt"和"new_file3.txt"。

四、重命名文件名中的一部分

有时,您可能需要重命名文件名中的一部分。一个常见的例子是将文件扩展名从.txt更改为.csv。

在这种情况下,你可以使用Python中的字符串函数slice()来剪切和组合文件名。

    import os

    fileList = os.listdir()

    for file in fileList:
        fileName, fileExt = os.path.splitext(file)
        if fileExt == ".txt":
            os.rename(file, fileName + ".csv")

上面的代码将扫描当前目录中的所有文件,并将扩展名为".txt"的所有文件重命名为".csv"。

五、处理文件名中的空格

在文件名中包含空格可能会导致重命名失败。例如,以下代码将无法重命名名为"my file.txt"的文件:

    os.rename("my file.txt", "new_file.txt")

这是因为Python将"my"、"file.txt"和"new_file.txt"视为三个不同的字符串。为了处理这个问题,您可以使用字符串函数replace()将空格替换为下划线或破折号。

    import os

    fileName = "my file.txt"
    newFileName = fileName.replace(" ", "_")

    os.rename(fileName, newFileName)

上面的代码将文件名中的空格替换为下划线,并将文件重命名为"my_file.txt"。

六、文件重命名的注意事项

在使用os.rename()函数时,请注意以下事项:

  • 使用os.rename()重命名文件或文件夹时,请确保您具有足够的权限来执行该操作。
  • 请务必小心,并确保只重命名您要重命名的文件或文件夹。
  • 请记住备份重命名前的文件或文件夹,以便于以后撤销错误操作。