Strings Class 11
Strings Class 11
Example –
Note – Python accepts single (‘), double (“), triple (”’) or triple(“””) quotes to
denote string literals. Single quoted strings and double quoted strings are equal.
Triple quotes are used for contain special characters like TAB, or NEWLINES.
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.
String Operations
Concatenation
Output:
Hello World!
Repetition
Python allows us to repeat the given string using repetition operator which is
denoted by symbol *.
Output:
>>> str1 * 5
‘HelloHelloHelloHelloHello’
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.
In
Not In
Slicing
Traversing a String
We can access each character of a string or traverse a string using for loop and
while loop.
In the above code, the loop starts from the first character of the string str1 and
automatically ends when the last character is accessed.
Here while loop runs till the condition index < len(str) is True, where index varies
from 0 to len(str1) -1.
There are numerous built-in functions in Python that let us operate with strings. a
few of the most popular built-in functions for manipulating strings.
len()
title()
Returns the string with first letter of every word in the string in uppercase and rest
in lowercase
lower()
upper()
Returns the string with all lowercase letters converted to uppercase
Returns number of times substring str occurs in the given string. If we do not give
start index and end index then searching starts from index 0 and ends at length
of the string.
Returns the first occurrence of index of substring str occurring in the given string.
If we do not give start and end then searching starts from index 0 and ends at
length of the string. If the substring is not present in the given string, then the
function returns -1
Same as find() but raises an exception if the substring is not present in the given
string
>>> str1 = ‘Hello World! Hello
Hello’
>>> str1.index(‘Hello’)
0
>>> str1.index(‘Hee’)
ValueError: substring not found
endswith()
Returns True if the given string ends with the supplied substring otherwise
returns False
startswith()
Returns True if the given string starts with the supplied substring otherwise
returns False
isalnum()
Returns True if characters of the given string are either alphabets or numeric. If
whitespace or special symbols are part of the given string or the string is empty it
returns False
islower()
Returns True if the string is non-empty and has all lowercase alphabets, or has at
least one character as lowercase alphabet and rest are non-alphabet characters
isupper()
Returns True if the string is non-empty and has all uppercase alphabets, or has
at least one character as uppercase character and rest are non-alphabet
characters
isspace()
Returns True if the string is non-empty and all characters are white spaces
(blank, tab, newline, carriage return)
istitle()
Returns True if the string is non-empty and title case, i.e., the first letter of every
word in the string in uppercase and rest in lowercase
lstrip()
Returns the string after removing the spaces only on the left of the string
rstrip()
Returns the string after removing the spaces only on the right of the string
strip()
Returns the string after removing the spaces both on the left and the right of the
string
replace(oldstr, newstr)
join()
Returns a string in which the characters in the string have been joined by a
separator
partition()
Partitions the given string at the first occurrence of the substring (separator) and
returns the string partitioned into three parts.
1. Substring before the separator
2. Separator
3. Substring after the separator
If the separator is not found in the string, it returns the whole string itself and two
empty strings
split()
Handling Strings
Output:
Enter a string: Today is a Holiday
Enter the character to be searched: a
Number of times character a occurs in the string is: 3
#Program
#Function to replace all vowels in the string with ‘*’
def replaceVowel(st):
newstr = ”
for character in st:
if character in ‘aeiouAEIOU’:
newstr += ‘*’
else:
newstr += character
return newstr
st = input(“Enter a String: “)
st1 = replaceVowel(st)
print(“The original String is:”,st)
print(“The modified String is:”,st1)
Output:
Enter a String: Hello World
The original String is: Hello World
The modified String is: H*ll* W*rld
Q. Write a program to input a string from the user and print it in the reverse
order without creating a new string.
#Program
#Program to display string in reverse order
st = input(“Enter a string: “)
for i in range(-1,-len(st)-1,-1):
print(st[i],end=”)
Output:
Enter a string: Hello World
dlroW olleH
#Program
#Function to reverse a string
def reverseString(st):
newstr = ” #create a new string
length = len(st)
for i in range(-1,-length-1,-1):
newstr += st[i]
return newstr
#end of function
st = input(“Enter a String: “)
st1 = reverseString(st)
print(“The original String is:”,st)
print(“The reversed String is:”,st1)
Output:
Enter a String: Hello World
The original String is: Hello World
The reversed String is: dlroW olleH
Output 1:
Enter a String: kanak
The given string kanak is a palindrome
Output 2:
Enter a String: computer
The given string computer is not a palindrome
ii. print(mySubject[-7:-1])
Answer – Scienc
iii. print(mySubject[::2])
Answer – Cmue cec
iv. print(mySubject[len(mySubject)-1])
Answer – e
v. print(2*mySubject)
Answer – Computer ScienceComputer Science
vi. print(mySubject[::-2])
Answer – eniSrtpo
viii. print(mySubject.swapcase())
Answer – cOMPUTER sCIENCE
ix. print(mySubject.startswith(‘Comp’))
Answer – True
x. print(mySubject.isalpha())
Answer – False
i. print(myAddress.lower())
Answer – wz-1,new ganga nagar,new delhi
ii. print(myAddress.upper())
Answer – WZ-1,NEW GANGA NAGAR,NEW DELHI
iii. print(myAddress.count(‘New’))
Answer – 2
iv. print(myAddress.find(‘New’))
Answer – 5
v. print(myAddress.rfind(‘New’))
Answer – 21
vi. print(myAddress.split(‘,’))
Answer – [‘WZ-1’, ‘New Ganga Nagar’, ‘New Delhi’]
viii. print(myAddress.replace(‘New’,’Old’))
Answer – WZ-1,Old Ganga Nagar,Old Delhi
ix. print(myAddress.partition(‘,’))
Answer – (‘WZ-1’, ‘,’, ‘New Ganga Nagar,New Delhi’)
x. print(myAddress.index(‘Agra’))
Answer – ValueError: substring not found
Output
Enter your text : Hello how are you
Alphabets: 14
Digits: 0
Special Characters: 3
Words in the Input : 4
4. Write a user defined function to convert a string with more than one word
into title case string where string is passed as parameter. (Title case means
that the first letter of each word is capitalised)
Answer –
def convertToTitle(string):
titleString = string.title();
print(titleString)
if(str.istitle()):
print(“The String is already in title case”)
elif(Space > 0):
convertToTitle(str)
else:
print(“One word String”)
Output
Type your Text : Welcome to my school
Welcome To My School
6. Input a string having some digits. Write a function to return the sum of
digits present in this string.
Answer –
def myfunction(string):
sum = 0
for a in string:
if(a.isdigit()):
sum += int(a)
return sum
Output
Enter any string with digits : Welcome 225
The sum of digits in the string : 9
myfunction()
Output
Enter a sentence: Welcome to my school
Welcome-to-my-school