Open In App

Python | os.rename() method

Last Updated : 12 Jul, 2025
Comments
Improve
Suggest changes
4 Likes
Like
Report

OS module in Python provides functions for interacting with the operating system. OS comes under Python’s standard utility modules. This module provides a portable way of using operating system-dependent functionality.

To rename a file or directory in Python you can use os.rename() function of OS module. This method renames a source file or directory to a specified destination file or directory. It takes two parameters - source (current file name) and destination (new file name).

Syntax:

os.rename(source, destination, *, src_dir_fd = None, dst_dir_fd = None)

Parameters:

  • source: A path-like object representing the file system path. This is the source file path which is to be renamed.
  • destination: A path-like object representing the file system path. 
  • src_dir_fd (optional): A file descriptor referring to a directory. 
  • dst_dir_fd (optional): A file descriptor referring to a directory. 

Return Type: 

This method does not return any value.

Using os.rename() function and Error Handling:

Let's see the program on how to use the os.rename function of the OS module and how to handle errors while using it.

Code 1: Use of os.rename() method.

# Python program to explain os.rename() method 

# importing os module 
import os


# Source file path
source = 'GeeksforGeeks/file.txt'

# destination file path
dest = 'GeekforGeeks/newfile.txt'


# Now rename the source path
# to destination path
# using os.rename() method
os.rename(source, dest)
print("Source path renamed to destination path successfully.")

Code 2: Handling possible errors

# Python program to explain os.rename() method 

# importing os module 
import os


# Source file path
source = './GeeksforGeeks/file.txt'

# destination file path
dest = './GeeksforGeeks/dir'


# try renaming the source path
# to destination path
# using os.rename() method

try :
    os.rename(source, dest)
    print("Source path renamed to destination path successfully.")

# If Source is a file 
# but destination is a directory
except IsADirectoryError:
    print("Source is a file but destination is a directory.")

# If source is a directory
# but destination is a file
except NotADirectoryError:
    print("Source is a directory but destination is a file.")

# For permission related errors
except PermissionError:
    print("Operation not permitted.")

# For other errors
except OSError as error:
    print(error)

 

Reference Material: https://docs.python.org/3/library/os.html#os.rename

In this article, we have covered using os.rename() function to rename a file or directory in Python. This is a very easy and straightforward way of renaming a file or directory in Python. OS module provides a list of functions used to interact with the operating system.


Next Article
Article Tags :
Practice Tags :

Similar Reads