Python Strings: Replace, Join, Split, Reverse, Uppercase & Lowercase

In Python everything is object and string are an object too. Python string can be created simply by enclosing characters in the double quote.

For example:

var = "Hello World!"

In this tutorial, we will learn -

Accessing Values in Strings

Python does not support a character type, these are treated as strings of length one, also considered as substring.

We use square brackets for slicing along with the index or indices to obtain a substring.

var1 = "gtupapers!"
var2 = "Software Testing"
print ("var1[0]:",var1[0])
print ("var2[1:5]:",var2[1:5])

Output

var1[0]: G
var2[1:5]: oftw 

Various String Operators

There are various string operators that can be used in different ways like concatenating different string.

Suppose if a=guru and b=99 then a+b= "gtupapers". Similarly, if you are using a*2, it will "GuruGuru". Likewise, you can use other operators in string.

Operator Description Example
[]Slice- it gives the letter from the given indexa[1] will give "u" from the word Guru as such ( 0=G, 1=u, 2=r and 3=u)
x="Guru"
print (x[1])
[ : ]Range slice-it gives the characters from the given rangex [1:3] it will give "ur" from the word Guru. Remember it will not consider 0 which is G, it will consider word after that is ur.
x="Guru" 
print (x[1:3])
inMembership-returns true if a letter exist in the given stringu is present in word Guru and hence it will give 1 (True)
x="Guru" 
print ("u" in x)
not inMembership-returns true if a letter exist is not in the given stringl not present in word Guru and hence it will give 1
x="Guru" 
print ("l" not in x)
r/RRaw string suppresses actual meaning of escape characters. Print r'\n' prints \n and print R'/n' prints \n
% - Used for string format%r - It insert the canonical string representation of the object (i.e., repr(o)) %s- It insert the presentation string representation of the object (i.e., str(o)) %d- it will format a number for display The output of this code will be "guru 99".
name = 'guru'
number = 99
print ('%s %d' % (name,number))	
+It concatenates 2 stringsIt concatenate strings and gives the result
x="Guru" 
y="99" 
print (x+y)
*Repeat It prints the character twice.
x="Guru" 
y="99" 
print (x*2)

Some more examples

You can update Python String by re-assigning a variable to another string. The new value can be related to previous value or to a completely different string all together.

x = "Hello World!"
print(x[:6]) 
print(x[0:6] + "gtupapers")

Output

Hello
Hello gtupapers

Note : - Slice:6 or 0:6 has the same effect

Python String replace() Method

The method replace() returns a copy of the string in which the values of old string have been replaced with the new value.

oldstring = 'I like gtupapers' 
newstring = oldstring.replace('like', 'love')
print(newstring)

Output

I love gtupapers

Changing upper and lower case strings

In Python, you can even change the string to upper case or lower case.

string="python at gtupapers"
print(string.upper())

Output

PYTHON AT gtupapers

Likewise, you can also do for other function as well like capitalize

string="python at gtupapers"		
print(string.capitalize())

Output

Python at gtupapers

You can also convert your string to lower case

string="PYTHON AT gtupapers"
print(string.lower())

Output

python at gtupapers

Using "join" function for the string

The join function is a more flexible way for concatenating string. With join function, you can add any character into the string.

For example, if you want to add a colon (:) after every character in the string "Python" you can use the following code.

print(":".join("Python"))	

Output

P:y:t:h:o:n

Reversing String

By using the reverse function, you can reverse the string. For example, if we have string "12345" and then if you apply the code for the reverse function as shown below.

string="12345"		
print(''.join(reversed(string)))

Output

54321

Split Strings

Split strings is another function that can be applied in Python let see for string "gtupapers career gtupapers". First here we will split the string by using the command word.split and get the result.

word="gtupapers career gtupapers"		
print(word.split(' '))

Output

['gtupapers', 'career', 'gtupapers']

To understand this better we will see one more example of split, instead of space (' ') we will replace it with ('r') and it will split the string wherever 'r' is mentioned in the string

word="gtupapers career gtupapers"		
print(word.split('r'))

Output

['gu', 'u99 ca', 'ee', ' gu', 'u99']

Important Note:

In Python, Strings are immutable.

Consider the following code

x = "gtupapers"
x.replace("gtupapers","Python")
print(x)

Output

gtupapers

will still return gtupapers. This is because x.replace("gtupapers","Python") returns a copy of X with replacements made

You will need to use the following code to observe changes

x = "gtupapers"
x = x.replace("gtupapers","Python")
print(x)

Output

Python

Above codes are Python 3 examples, If you want to run in Python 2 please consider following code.

Python 2 Example

#Accessing Values in Strings
var1 = "gtupapers!"
var2 = "Software Testing"
print "var1[0]:",var1[0]
print "var2[1:5]:",var2[1:5]
#Some more examples
x = "Hello World!"
print x[:6] 
print x[0:6] + "gtupapers"
#Python String replace() Method
oldstring = 'I like gtupapers' 
newstring = oldstring.replace('like', 'love')
print newstring
#Changing upper and lower case strings
string="python at gtupapers"
print string.upper()
string="python at gtupapers"		
print string.capitalize()
string="PYTHON AT gtupapers"
print string.lower()
#Using "join" function for the string
print":".join("Python")		
#Reversing String
string="12345"		
print''.join(reversed(string))
#Split Strings
word="gtupapers career gtupapers"		
print word.split(' ')
word="gtupapers career gtupapers"		
print word.split('r')
x = "gtupapers"
x.replace("gtupapers","Python")
print x
x = "gtupapers"
x = x.replace("gtupapers","Python")
print x

Output

var1[0]: G
var2[1:5]: oftw
Hello
Hello gtupapers
I love gtupapers
PYTHON AT gtupapers
Python at gtupapers
python at gtupapers
P:y:t:h:o:n
54321
['gtupapers', 'career', 'gtupapers']
['gu', 'u99 ca', 'ee', ' gu', 'u99']
gtupapers
Python

Python has introduced a .format function which does way with using the cumbersome %d and so on for string formatting.

Summary:

Since Python is an object-oriented programming language, many functions can be applied to Python objects. A notable feature of Python is its indenting source statements to make the code easier to read.

 

YOU MIGHT LIKE: