How do I remove a substring from the end of a string?

To remove a substring from the end of a string, you can use the rsplit() method and specify the substring as the delimiter. This will split the string from the right, starting at the end of the string and working towards the beginning. The resulting list will contain the string split into substrings, with the substring you want to remove as the last element. You can then join the list back into a string, omitting the last element (the substring you want to remove).

Watch a course Python - The Practical Guide

Here's an example of how to use rsplit() to remove a substring from the end of a string:

string = 'Hello, world!'
substring = 'world!'

# Split the string using the substring as the delimiter
parts = string.rsplit(substring, 1)

# Join the parts back together, omitting the substring
result = ''.join(parts)
print(result)  # Output: 'Hello, '

You can also use the replace() method to remove a substring from the end of a string. The replace() method takes two arguments: the substring to be replaced, and the replacement string. You can use an empty string as the replacement string to remove the substring.

Here's an example of how to use replace() to remove a substring from the end of a string:

string = 'Hello, world!'
substring = 'world!'

# Replace the substring with an empty string
result = string.replace(substring, '')
print(result)  # Output: 'Hello, '