"
This article is part of in the series
Last Updated: Saturday 21st December 2013

Replacing Python Strings

Often you'll have a string (str object), where you will want to modify the contents by replacing one piece of text with another. In Python, everything is an object - including strings. This includes the str object. Luckily, Python's string module comes with a replace() method. The replace() method is part of the string module, and can be called either from a str object or from the string module alone.

Python's string.replace() Prototype

The prototype of the string.replace() method is as follows:

string.replace(s, old, new[, maxreplace])

Function parameters
  • s: The string to search and replace from.
  • old: The old sub-string you wish to replace.
  • new: The new sub-string you wish to put in-place of the old one.
  • maxreplace: The maximum number of times you wish to replace the sub-string.

Examples

From the string Module Directly

[python]
our_str = 'Hello World'

import string

new_str = string.replace(our_str, 'World', 'Jackson')
print(new_str)

new_str = string.replace(our_str, 'Hello', 'Hello,')
print(new_str)

our_str = 'Hello you, you and you!'
new_str = string.replace(our_str, 'you', 'me', 1)
print(new_str)
new_str = string.replace(our_str, 'you', 'me', 2)
print(new_str)
new_str = string.replace(our_str, 'you', 'me', 3)
print(new_str)
[/python]

This gives us the following output:
[shell]
Hello Jackson
Hello, World
Hello me, you and you!
Hello me, me and you!
Hello me, me and me!
[/shell]

And using the string.replace() method from the str object:

[python]
our_str = 'Hello World'

new_str = our_str.replace('World', 'Jackson')
print(new_str)

new_str = our_str.replace('Hello', 'Hello,')
print(new_str)

our_str = 'Hello you, you and you!'
new_str = our_str.replace('you', 'me', 1)
print(new_str)
new_str = our_str.replace('you', 'me', 2)
print(new_str)
new_str = our_str.replace('you', 'me', 3)
print(new_str)
[/python]

Which gives us:

[shell]
Hello Jackson
Hello, World
Hello me, you and you!
Hello me, me and you!
Hello me, me and me!
[/shell]

Shockingly, we get the same output.

And there you have it! Python's string.replace().