The Python tutorials are written as Jupyter notebooks and run directly in Google Colab—a hosted notebook environment that requires no setup. Click the Run in Google Colab button.
Colab link - Open colab
Welcome! This notebook will teach you about the string operations in the Python Programming Language. By the end of this notebook, you'll know the basics string operations in Python, including indexing, escape sequences and operations.
The following example shows a string contained within 2 quotation marks:
# Use quotation marks for defining string
"Michael Jackson"
We can also use single quotation marks:
# Use single quotation marks for defining string
'Michael Jackson'
A string can be a combination of spaces and digits:
# Digitals and spaces in string
'1 2 3 4 5 6 '
A string can also be a combination of special characters :
# Special characters in string
'@#2_#]&*^%$'
We can print our string using the print statement:
# Print the string
print("hello!")
We can bind or assign a string to another variable:
# Assign string to variable
Name = "Michael Jackson"
Name
# Print the first element in the string
print(Name[0])
We can access index 6:
# Print the element on index 6 in the string
print(Name[6])
Moreover, we can access the 13th index:
# Print the element on the 13th index in the string
print(Name[13])
We can also use negative indexing with strings:
Negative index can help us to count the element from the end of the string.
The last element is given by the index -1:
# Print the last element in the string
print(Name[-1])
The first element can be obtained by index -15:
# Print the first element in the string
print(Name[-15])
We can find the number of characters in a string by using len
, short for length:
# Find the length of string
len("Michael Jackson")
We can obtain multiple characters from a string using slicing, we can obtain the 0 to 4th and 8th to the 12th element:
# Take the slice on variable Name with only index 0 to index 3
Name[0:4]
# Take the slice on variable Name with only index 8 to index 11
Name[8:12]
We can also input a stride value as follows, with the '2' indicating that we are selecting every second variable:
# Get every second element. The elments on index 1, 3, 5 ...
Name[::2]
We can also incorporate slicing with the stride. In this case, we select the first five elements and then use the stride:
# Get every second element in the range from index 0 to index 4
Name[0:5:2]
We can concatenate or combine strings by using the addition symbols, and the result is a new string that is a combination of both:
# Concatenate two strings
Statement = Name + "is the best"
Statement
To replicate values of a string we simply multiply the string by the number of times we would like to replicate it. In this case, the number is three. The result is a new string, and this new string consists of three copies of the original string:
# Print the string for 3 times
3 * "Michael Jackson"
You can create a new string by setting it to the original variable. Concatenated with a new string, the result is a new string that changes from Michael Jackson to “Michael Jackson is the best".
# Concatenate strings
Name = "Michael Jackson"
Name = Name + " is the best"
Name
Back slashes represent the beginning of escape sequences. Escape sequences represent strings that may be difficult to input. For example, back slash "n" represents a new line. The output is given by a new line after the back slash "n" is encountered:
# New line escape sequence
print(" Michael Jackson \n is the best" )
Similarly, back slash "t" represents a tab:
# Tab escape sequence
print(" Michael Jackson \t is the best" )
If you want to place a back slash in your string, use a double back slash:
# Include back slash in string
print(" Michael Jackson \\ is the best" )
We can also place an "r" before the string to display the backslash:
# r will tell python that string will be display as raw string
print(r" Michael Jackson \ is the best" )
There are many string operation methods in Python that can be used to manipulate the data. We are going to use some basic string operations on the data.
Let's try with the method upper
; this method converts lower case characters to upper case characters:
# Convert all the characters in string to upper case
A = "Thriller is the sixth studio album"
print("before upper:", A)
B = A.upper()
print("After upper:", B)
The method replace
replaces a segment of the string, i.e. a substring with a new string. We input the part of the string we would like to change. The second argument is what we would like to exchange the segment with, and the result is a new string with the segment changed:
# Replace the old substring with the new target substring is the segment has been found in the string
A = "Michael Jackson is the best"
B = A.replace('Michael', 'Janet')
B
The method find
finds a sub-string. The argument is the substring you would like to find, and the output is the first index of the sequence. We can find the sub-string jack
or el
.
# Find the substring in the string. Only the index of the first elment of substring in string will be the output
Name = "Michael Jackson"
Name.find('el')
# Find the substring in the string.
Name.find('Jack')
If the sub-string is not in the string then the output is a negative one. For example, the string 'Jasdfasdasdf' is not a substring:
# If cannot find the substring in the string
Name.find('Jasdfasdasdf')