Python Byt namn på fil och katalog med os.rename()
⚡ Smart sammanfattning
Python byter namn på filer och kataloger med os.rename(). Här lär du dig os.rename(), os.renames(), shutil.move() och pathlib Path.rename(), plus hur man byter namn på en katalog och byter namn på flera filer i grupp med tydliga exempel.

Python Döp om fil
Python rename() fil är en metod som används för att byta namn på en fil eller en katalog i Python programmering. De Python rename() filmetoden kan deklareras genom att skicka två argument som heter src (källa) och dst (Destination).
syntax
Detta är syntaxen för metoden os.rename().
os.rename(src, dst)
Driftparametrar
src: Källa är namnet på filen eller katalogen. Det borde redan finnas.
dst: Destination är det nya namnet på filen eller katalogen som du vill ändra.
Exempel:
import os os.rename('guru99.txt','career.guru99.txt')
Låt oss titta på exemplet i detalj
Du kan byta namn på originalfilen, vi har ändrat filnamnet från “Guru99.txt” till “Career.guru99.txt”.
- För att byta namn på filen "guru99.txt" kommer vi att använda "byt namn på funktion" i OS-modulen
- Så när koden exekveras kan du observera att en ny fil "career.guru99.txt" skapas på höger sida av panelen, som vi döpte om till vår ursprungliga fil.
Här är den fullständiga koden
import os import shutil from os import path def main(): # make a duplicate of an existing file if path.exists("guru99.txt"): # get the path to the file in the current directory src = path.realpath("guru99.txt"); # rename the original file os.rename('guru99.txt','career.guru99.txt') if __name__ == "__main__": main()
Hur man byter namn på en katalog i Python
Metoden os.rename() byter även namn på kataloger, inte bara filer. Skicka det aktuella mappnamnet som källa och det nya namnet som destination.
import os os.rename("old_directory", "new_directory")
Om källkatalogen inte finns, Python genererar ett FileNotFoundError, så det är bra att kontrollera sökvägen först.
Byt namn på en fil med hjälp av os.renames()
Metoden os.renames() byter namn på en fil och skapar automatiskt eventuella saknade mellanliggande kataloger i målsökvägen. Den tar också bort tomma kataloger som finns kvar i källsökvägen.
import os os.renames("guru99.txt", "archive/2024/career.txt")
Här skapas mapparna arkiv och 2024 automatiskt om de inte redan finns.
Byt namn på en fil med shutil.move()
Funktionen shutil.move() flyttar en fil till en ny plats, vilket i praktiken byter namn på den när destinationen är samma katalog.
import shutil shutil.move("guru99.txt", "career.guru99.txt")
Till skillnad från os.rename() kan shutil.move() också flytta en fil mellan olika filsystem eller enheter.
Byt namn på en fil med hjälp av pathlib-modulen
In Python 3.4 och senare erbjuder pathlib-modulen en objektorienterad Path.rename()-metod för att byta namn på filer.
from pathlib import Path file = Path("guru99.txt") file.rename("career.guru99.txt")
Metoden rename() returnerar ett nytt Path-objekt som pekar på den omdöpta filen.
Hur man byter namn på flera filer i Python
För att byta namn på många filer samtidigt, loopa över filerna i en katalog med os.listdir() och anropa os.rename() för var och en. Exemplet nedan lägger till ett numrerat prefix till varje fil.
import os folder = "myfiles" for count, filename in enumerate(os.listdir(folder)): new_name = f"file_{count}.txt" os.rename(os.path.join(folder, filename), os.path.join(folder, new_name))
Genom att använda os.path.join() fortsätter koden att fungera korrekt på alla operativsystem.

