Python os rename()

The os.rename function in Python's os module is used to rename a file or directory. This function can also be used to move a file or directory to a different location if the destination is on the same filesystem.

Table of Contents

  1. Introduction
  2. os.rename Function Syntax
  3. Examples
    • Basic Usage
    • Renaming a Directory
    • Moving a File
  4. Real-World Use Case
  5. Conclusion

Introduction

The os.rename function in Python's os module allows you to rename a file or directory. If the destination specified already exists, it will be replaced. This function is useful for managing files and directories by renaming or moving them to new locations within the same filesystem.

os.rename Function Syntax

Here is how you use the os.rename function:

import os

os.rename(src, dst)

Parameters:

  • src: The source file or directory path.
  • dst: The destination file or directory path.

Returns:

  • None. This function renames or moves the specified file or directory.

Examples

Basic Usage

Here is an example of how to use the os.rename function to rename a file.

Example

import os

# Creating a sample file
file_path = 'sample.txt'
with open(file_path, 'w') as file:
    file.write("This is a sample file.")

# Renaming the file
new_file_path = 'renamed_sample.txt'
os.rename(file_path, new_file_path)
print(f"File '{file_path}' has been renamed to '{new_file_path}'.")

Output:

File 'sample.txt' has been renamed to 'renamed_sample.txt'.

Renaming a Directory

This example demonstrates how to use the os.rename function to rename a directory.

Example

import os

# Creating a sample directory
directory_path = 'sample_directory'
os.mkdir(directory_path)

# Renaming the directory
new_directory_path = 'renamed_directory'
os.rename(directory_path, new_directory_path)
print(f"Directory '{directory_path}' has been renamed to '{new_directory_path}'.")

Output:

Directory 'sample_directory' has been renamed to 'renamed_directory'.

Moving a File

This example demonstrates how to use the os.rename function to move a file to a different location within the same filesystem.

Example

import os

# Creating a sample file
file_path = 'sample.txt'
with open(file_path, 'w') as file:
    file.write("This is a sample file.")

# Creating a new directory
new_directory_path = 'new_directory'
os.mkdir(new_directory_path)

# Moving the file to the new directory
new_file_path = os.path.join(new_directory_path, 'sample.txt')
os.rename(file_path, new_file_path)
print(f"File '{file_path}' has been moved to '{new_file_path}'.")

Output:

File 'sample.txt' has been moved to 'new_directory/sample.txt'.

Real-World Use Case

Organizing Files

In real-world applications, the os.rename function can be used to organize files by renaming or moving them into appropriate directories based on certain criteria.

Example

import os

def organize_files_by_extension(directory):
    for filename in os.listdir(directory):
        file_path = os.path.join(directory, filename)
        if os.path.isfile(file_path):
            file_extension = os.path.splitext(filename)[1][1:]  # Get the file extension
            new_directory = os.path.join(directory, file_extension)
            os.makedirs(new_directory, exist_ok=True)
            new_file_path = os.path.join(new_directory, filename)
            os.rename(file_path, new_file_path)
            print(f"Moved '{file_path}' to '{new_file_path}'.")

# Example usage
directory_path = '/path/to/your/directory'
organize_files_by_extension(directory_path)

Output:

Moved '/path/to/your/directory/file1.txt' to '/path/to/your/directory/txt/file1.txt'.
Moved '/path/to/your/directory/file2.py' to '/path/to/your/directory/py/file2.py'.
Moved '/path/to/your/directory/file3.jpg' to '/path/to/your/directory/jpg/file3.jpg'.

Conclusion

The os.rename function in Python's os module is used to rename or move a file or directory. This function is useful for managing files and directories by renaming or moving them to new locations within the same filesystem. Proper error handling should be implemented to manage cases where the source or destination paths do not exist or are not accessible.

Comments

Spring Boot 3 Paid Course Published for Free
on my Java Guides YouTube Channel

Subscribe to my YouTube Channel (165K+ subscribers):
Java Guides Channel

Top 10 My Udemy Courses with Huge Discount:
Udemy Courses - Ramesh Fadatare