Class XI Computer Science (083)
Strings
❖ Strings
String is a sequence which is made up of one or more UNICODE characters.
Here the character can be a letter, digit, whitespace or any other symbol.
A string can be created by enclosing one or more characters in single,
double or triple quote.
>>> str1 = 'Hello World!'
>>> str2 = "Hello World!"
>>> str3 = """Hello World!"""
>>> str4 = '''Hello World!''
str1, str2, str3, str4 are all string variables having the same value
'Hello World!'. Values stored in str3 and str4 can be extended to multiple
lines using triple codes as can be seen in the following example:
>>> str3 = """Hello World!
welcome to the world of Python"""
>>> str4 = '''Hello World! welcome to the world of Python'''
❖ Accessing Characters in a String
Each individual character in a string can be accessed using a technique
called indexing. The index specifies the character to be accessed in the
string and is written in square brackets ([ ]). The index of the first
character (from left) in the string is 0 and the last character is n-1
where n is the length of the string. If we give index value out of this
range then we get an IndexError. The index must be an integer (positive,
zero or negative).
#initializes a string str1
>>> str1 = 'Hello World!'
#gives the first character of str1
>>> str1[0]
'H'
#gives seventh character of str1
>>> str1[6]
'W'
#gives last character of str1
>>> str1[11]
'!'
#gives error as index is out of range
>>> str1[15]
IndexError: string index out of range
Pre. by Pijush Page 1 of 17
,Class XI Computer Science (083)
Python allows an index value to be negative also. Negative indices are
used when we want to access the characters of the string from right to
left. Starting from right hand side, the first character has the index as
-1 and the last character has the index –n where n is the length of the
string. Table 8.1 shows the indexing of characters in the string ‘Hello
World!’ in both the cases, i.e., positive and negative indices.
>>> str1[-1] #gives first character from right
'!'
>>> str1[-12] #gives last character from right
'H'
❖ Indexing of characters in string 'Hello World!'
Positive Indices 0 1 2 3 4 5 6 7 8 9 10 11
String H e l l o W o r l d !
Negative Indices -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
❖ String is Immutable
A string is an immutable data type. It means that the contents of the
string cannot be changed after it has been created. An attempt to do this
would lead to an error.
>>> str1 = "Hello World!"
#if we try to replace character 'e' with 'a'
>>> str1[1] = 'a'
TypeError: 'str' object does not support item assignment
❖ STRING OPERATIONS
As we know that string is a sequence of characters. Python allows certain
operations on string data type, such as concatenation, repetition,
membership and slicing. These operations are explained in the following
subsections with suitable examples.
A. Concatenation
To concatenate means to join. Python allows us to join two strings using
concatenation operator plus which is denoted by symbol ‘+’.
>>> str1 = 'Hello' #First string
>>> str2 = 'World!' #Second string
>>> str1 + str2 #Concatenated strings
'HelloWorld!'
Pre. by Pijush Page 2 of 17
, Class XI Computer Science (083)
B. Repetition
Python allows us to repeat the given string using repetition operator
which is denoted by symbol ‘*’.
#assign string 'Hello' to str1
>>> str1 = 'Hello'
#repeat the value of str1 5 times
>>> str1 * 5
'HelloHelloHelloHelloHello'
C. Membership
Python has two membership operators 'in' and 'not in'. The 'in' operator
takes two strings and returns True if the first string appears as a
substring in the second string, otherwise it returns False.
>>> str1 = 'Hello World!'
>>> 'W' in str1
True
>>> 'Wor' in str1
True
>>> 'My' in str1
False
The 'not in' operator also takes two strings and returns True if the first
string does not appear as a substring in the second string, otherwise
returns False.
>>> str1 = 'Hello World!'
>>> 'My' not in str1
True
>>> 'Hello' not in str1
False
❖ Slicing
In Python, to access some part of a string or substring, we use a method
called slicing. This can be done by specifying an index range. Given a
string str1, the slice operation str1[n:m] returns the part of the string
str1 starting from index n (inclusive) and ending at m (exclusive). In
other words, we can say that str1[n:m] returns all the characters starting
from str1[n] till str1[m-1]. The numbers of characters in the substring
will always be equal to difference of two indices m and n, i.e., (m-n).
Pre. by Pijush Page 3 of 17
Strings
❖ Strings
String is a sequence which is made up of one or more UNICODE characters.
Here the character can be a letter, digit, whitespace or any other symbol.
A string can be created by enclosing one or more characters in single,
double or triple quote.
>>> str1 = 'Hello World!'
>>> str2 = "Hello World!"
>>> str3 = """Hello World!"""
>>> str4 = '''Hello World!''
str1, str2, str3, str4 are all string variables having the same value
'Hello World!'. Values stored in str3 and str4 can be extended to multiple
lines using triple codes as can be seen in the following example:
>>> str3 = """Hello World!
welcome to the world of Python"""
>>> str4 = '''Hello World! welcome to the world of Python'''
❖ Accessing Characters in a String
Each individual character in a string can be accessed using a technique
called indexing. The index specifies the character to be accessed in the
string and is written in square brackets ([ ]). The index of the first
character (from left) in the string is 0 and the last character is n-1
where n is the length of the string. If we give index value out of this
range then we get an IndexError. The index must be an integer (positive,
zero or negative).
#initializes a string str1
>>> str1 = 'Hello World!'
#gives the first character of str1
>>> str1[0]
'H'
#gives seventh character of str1
>>> str1[6]
'W'
#gives last character of str1
>>> str1[11]
'!'
#gives error as index is out of range
>>> str1[15]
IndexError: string index out of range
Pre. by Pijush Page 1 of 17
,Class XI Computer Science (083)
Python allows an index value to be negative also. Negative indices are
used when we want to access the characters of the string from right to
left. Starting from right hand side, the first character has the index as
-1 and the last character has the index –n where n is the length of the
string. Table 8.1 shows the indexing of characters in the string ‘Hello
World!’ in both the cases, i.e., positive and negative indices.
>>> str1[-1] #gives first character from right
'!'
>>> str1[-12] #gives last character from right
'H'
❖ Indexing of characters in string 'Hello World!'
Positive Indices 0 1 2 3 4 5 6 7 8 9 10 11
String H e l l o W o r l d !
Negative Indices -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
❖ String is Immutable
A string is an immutable data type. It means that the contents of the
string cannot be changed after it has been created. An attempt to do this
would lead to an error.
>>> str1 = "Hello World!"
#if we try to replace character 'e' with 'a'
>>> str1[1] = 'a'
TypeError: 'str' object does not support item assignment
❖ STRING OPERATIONS
As we know that string is a sequence of characters. Python allows certain
operations on string data type, such as concatenation, repetition,
membership and slicing. These operations are explained in the following
subsections with suitable examples.
A. Concatenation
To concatenate means to join. Python allows us to join two strings using
concatenation operator plus which is denoted by symbol ‘+’.
>>> str1 = 'Hello' #First string
>>> str2 = 'World!' #Second string
>>> str1 + str2 #Concatenated strings
'HelloWorld!'
Pre. by Pijush Page 2 of 17
, Class XI Computer Science (083)
B. Repetition
Python allows us to repeat the given string using repetition operator
which is denoted by symbol ‘*’.
#assign string 'Hello' to str1
>>> str1 = 'Hello'
#repeat the value of str1 5 times
>>> str1 * 5
'HelloHelloHelloHelloHello'
C. Membership
Python has two membership operators 'in' and 'not in'. The 'in' operator
takes two strings and returns True if the first string appears as a
substring in the second string, otherwise it returns False.
>>> str1 = 'Hello World!'
>>> 'W' in str1
True
>>> 'Wor' in str1
True
>>> 'My' in str1
False
The 'not in' operator also takes two strings and returns True if the first
string does not appear as a substring in the second string, otherwise
returns False.
>>> str1 = 'Hello World!'
>>> 'My' not in str1
True
>>> 'Hello' not in str1
False
❖ Slicing
In Python, to access some part of a string or substring, we use a method
called slicing. This can be done by specifying an index range. Given a
string str1, the slice operation str1[n:m] returns the part of the string
str1 starting from index n (inclusive) and ending at m (exclusive). In
other words, we can say that str1[n:m] returns all the characters starting
from str1[n] till str1[m-1]. The numbers of characters in the substring
will always be equal to difference of two indices m and n, i.e., (m-n).
Pre. by Pijush Page 3 of 17