Python program for removing n-th character from a string?

Removing the nth character from a string is a common string manipulation task in Python. We can accomplish this using several approaches: for loops, string slicing, or the replace() method. Let's explore each method with examples.

Understanding the Problem

When removing the nth character, remember that Python uses zero-based indexing. So the 1st character is at index 0, the 2nd character is at index 1, and so on. To remove the nth character, we target index n-1.

Using a For Loop

The for loop approach iterates through each character and skips the one at the target position ?

my_str = "Tutorialspoint"
print("Given string:", my_str)
n = 5
print("n-th character to be removed:", n)

result = ""
for i in range(len(my_str)):
    if i != (n-1):
        result += my_str[i]

print("The string after removing n-th character:", result)
Given string: Tutorialspoint
n-th character to be removed: 5
The string after removing n-th character: Tutoialspoint

Using String Slicing

String slicing provides the most efficient approach by concatenating the substring before and after the target character ?

my_str = "Welcome to Python Tutorial"
print("Given string:", my_str)
n = 5
print("n-th character to be removed:", n)

result = my_str[:n-1] + my_str[n:]
print("The string after removing n-th character:", result)
Given string: Welcome to Python Tutorial
n-th character to be removed: 5
The string after removing n-th character: Welcme to Python Tutorial

Using replace() Method

The replace() method can remove the nth character, but note that it replaces all occurrences of that character. Use the count parameter to limit replacements ?

my_str = "Welcome to Python Tutorial"
print("Given string:", my_str)
n = 6
print("n-th character to be removed:", n)

# Replace only the first occurrence
result = my_str.replace(my_str[n-1], "", 1)
print("The string after removing n-th character:", result)
Given string: Welcome to Python Tutorial
n-th character to be removed: 6
The string after removing n-th character: Welcoe to Python Tutorial

Comparison of Methods

Method Time Complexity Best For Limitation
For Loop O(n) Learning purposes Less efficient
String Slicing O(n) Most scenarios None
replace() O(n) Simple cases Affects all occurrences

Handling Edge Cases

Always validate the input to prevent index errors ?

def remove_nth_character(string, n):
    if n <= 0 or n > len(string):
        return string  # Return original if n is invalid
    return string[:n-1] + string[n:]

# Test with edge cases
test_string = "Python"
print(remove_nth_character(test_string, 0))   # Invalid n
print(remove_nth_character(test_string, 7))   # n too large
print(remove_nth_character(test_string, 3))   # Valid n
Python
Python
Pyton

Conclusion

String slicing is the most efficient and readable method for removing the nth character from a string. Use the for loop approach for educational purposes, and be cautious with replace() as it affects all occurrences of the character.

Updated on: 2026-03-25T04:46:33+05:30

1K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements