Python | os.rename() method (original) (raw)
Last Updated : 12 Jul, 2025
**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.
Python3 `
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
Python3 `
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.