0% found this document useful (0 votes)
5 views1 page

String Processing Techniques in Python

k

Uploaded by

adityakhouri2001
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views1 page

String Processing Techniques in Python

k

Uploaded by

adityakhouri2001
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Dealing with String Processing

String is a collection of alpha numeric and special characters. String is immutable as insert, delete and update operations can not
be carried out on a given string.

# string indexing and slicing index from left to right -> 0 1 2 3 4 5 6 7 8 9 mystr -> u n i v e r s i t y index from right to left -> -10 -9 -8 -7 -6 -5 -4 -3 -2 -1

In [ ]: mystr = "university"
print (mystr, len(mystr), type(mystr), id(mystr))
print (mystr[6], mystr[-4], mystr[8], mystr[-2], mystr[9], mystr[-1]) # indexing
print (mystr[1:6], mystr[-9:-4], mystr[1:-4], mystr[-9:6]) # slicing
print (mystr[0:6], mystr[:6], mystr[-10:-4], mystr[:-4])
print (mystr[6:], mystr[-4:])
print (mystr[3:6], mystr[-7:-4], mystr[3:-4], mystr[-7:6])
print (mystr[0::2], mystr[1::2], mystr[::-1])

In [62]: mystr = "tEChno iNDia uNIveRSiTy"


print (mystr, len(mystr), type(mystr), id(mystr))
print ([Link]())
print ([Link]())
print ([Link]())
print ([Link]())
print ([Link]())
print([Link](5))

tEChno iNDia uNIveRSiTy 23 <class 'str'> 2245788663040


TECHNO INDIA UNIVERSITY
techno india university
TecHNO IndIA UniVErsItY
Techno india university
Techno India University
tEChno iNDia uNIveRSiTy

In [69]: mystr = "abcd"


print (mystr, [Link](), [Link](), [Link]())
mystr = "1234"
print (mystr, [Link](), [Link](), [Link]())
mystr = "1234abcd"
print (mystr, [Link](), [Link](), [Link]())
mystr = "abcd@1234"
print (mystr, [Link](), [Link](), [Link]())

abcd True True False


1234 False True True
1234abcd False True False
abcd@1234 False False False

In [78]: mystr = "charity begins at home"


print (mystr, len(mystr), type(mystr), id(mystr))
print ([Link]("charity"))
print ([Link]("begi"), [Link]("begi", 8), [Link]("begi", 8, 20), [Link]
print ([Link]("home"), [Link]("at"), [Link]("at", 0, 17), [Link]("at", 15, 17))

charity begins at home 22 <class 'str'> 2245788662720


True
False True True False
True False True True

In [81]: mystr = "charity begins at home"


print (mystr, len(mystr), type(mystr), id(mystr))
print ([Link]("begins"))
print ([Link]("at"))
print ([Link]("school"))

charity begins at home 22 <class 'str'> 2245795528992


8
15
-1

In [84]: mystr = "charity begins at home"


print (mystr, len(mystr), type(mystr), id(mystr))
print ([Link]("begins"))
print ([Link]("at"))
print ([Link]("school"))

charity begins at home 22 <class 'str'> 2245788663200


8
15
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_23744\[Link] in <module>
3 print ([Link]("begins"))
4 print ([Link]("at"))
----> 5 print ([Link]("school"))

ValueError: substring not found

In [85]: mystr = "charity begins at home"


print (mystr, len(mystr), type(mystr), id(mystr))
try:
print ([Link]("begins"))
print ([Link]("at"))
print ([Link]("school"))
except ValueError as ve:
print ("Unsuccessful searching has taken place...!!!")
print ("Error message:", ve)

charity begins at home 22 <class 'str'> 2245795530032


8
15
Unsuccessful searching has taken place...!!!
Error message: substring not found

In [87]: mystr = "mississippi"


print (mystr, len(mystr), type(mystr), id(mystr))
print ([Link]("i"), [Link]("p"))

mississippi 11 <class 'str'> 2245787564656


4 2

In [89]: mystr = "good morning"


print (mystr, len(mystr), type(mystr), id(mystr))
mystr = [Link]("morning", "night")
print (mystr, len(mystr), type(mystr), id(mystr))

good morning 12 <class 'str'> 2245787961840


good night 10 <class 'str'> 2245787632816

In [92]: mystr = " good morning "


print (mystr, len(mystr), type(mystr), id(mystr))
result = [Link]()
print (result, len(result))
result = [Link]()
print (result, len(result))
result = [Link]()
print (result, len(result))

good morning 22 <class 'str'> 2245786606368


good morning 15
good morning 18
good morning 19

In [95]: mystr = "#@@#good#@##morning@#@"


print (mystr, len(mystr), type(mystr), id(mystr))
result = [Link]("#@")
print (result, len(result))
result = [Link]("@#")
print (result, len(result))
result = [Link]("#@")
print (result, len(result))

#@@#good#@##morning@#@ 22 <class 'str'> 2245720335424


good#@##morning 15
good#@##morning@#@ 18
#@@#good#@##morning 19

In [97]: mystr = "charity begins at home"


print (mystr, len(mystr), type(mystr), id(mystr))
result = [Link]()
print (result, type(result))
result = [Link]("i")
print (result, type(result))
result = [Link]("x")
print (result, type(result))

charity begins at home 22 <class 'str'> 2245795531472


['charity', 'begins', 'at', 'home'] <class 'list'>
['char', 'ty beg', 'ns at home'] <class 'list'>
['charity begins at home'] <class 'list'>

In [99]: list1 = ['charity', 'begins', 'at', 'home']


print (list1, len(list1), type(list1), id(list1))
mystr = " ".join(list1)
print (mystr, len(mystr), type(mystr), id(mystr))
mystr = ", ".join(list1)
print (mystr, len(mystr), type(mystr), id(mystr))
mystr = " - ".join(list1)
print (mystr, len(mystr), type(mystr), id(mystr))

['charity', 'begins', 'at', 'home'] 4 <class 'list'> 2245787855040


charity begins at home 22 <class 'str'> 2245790388272
charity, begins, at, home 25 <class 'str'> 2245788009056
charity - begins - at - home 28 <class 'str'> 2245790390992

Minor Project
In [100… import time
def countdown(user_time):
while user_time > 0:
mins, secs = divmod(user_time, 60)
timer = '{:02d}:{:02d}'.format(mins, secs)
print(timer, end='\r')
[Link](1)
user_time -= 1
print("Countdown Off!!!")

if __name__ == '__main__':
user_time = int(input("Enter a time in seconds: "))
countdown(user_time)

Enter a time in seconds: 10


Countdown Off!!!

In [5]: mystr = "university"


for i in range(len(mystr)):
print (mystr[i], end = ", ")

print()

for i in mystr:
print (i, end = ", ")

u, n, i, v, e, r, s, i, t, y,
u, n, i, v, e, r, s, i, t, y,

In [6]: mystr[3] = "y"

---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_12268\[Link] in <module>
----> 1 mystr[3] = "y"

TypeError: 'str' object does not support item assignment

Class Assignment

Take a sentence with upper and lower case letters and other characters from the user and find the number of vowels and
consonants in the given string.

In [8]: mystr = input("Please enter a sentence: ").lower()


vcount = ccount = 0
for ch in mystr:
if ([Link]()):
if (ch in "aeiou"): vcount += 1
else: ccount += 1

print (f"So number of vowels is {vcount} and consonant is {ccount}...")


print ("End of the program...")

Please enter a sentence: Univer$iTy


So number of vowels is 4 and consonant is 5...
End of the program...

Dealing with the List Processing

List is a collection of data items of same or different datatypes enclosed with in square brackets. List items are mutable as
INSERT, DELETE and UPDATE operations can be carried out on them.

In [56]: list1 = [100, 500, 200, 400, 300]


print (list1, len(list1), type(list1), id(list1))
print (max(list1), min(list1))
print (sum(list1), sum(list1) / len(list1))

[100, 500, 200, 400, 300] 5 <class 'list'> 2036183463808


500 100
1500 300.0

In [57]: list1 = ["Monday", "Friday", "Thursday", "Tuesday", "Sunday"]


print (list1, len(list1), type(list1), id(list1))
print (max(list1), min(list1))
print (sum(list1), sum(list1) / len(list1))

['Monday', 'Friday', 'Thursday', 'Tuesday', 'Sunday'] 5 <class 'list'> 2036182921344


Tuesday Friday
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_36520\[Link] in <module>
2 print (list1, len(list1), type(list1), id(list1))
3 print (max(list1), min(list1))
----> 4 print (sum(list1), sum(list1) / len(list1))

TypeError: unsupported operand type(s) for +: 'int' and 'str'

In [60]: list1 = [100, 500.45, 200, False, 400.5, True, 300]


print (list1, len(list1), type(list1), id(list1))
print (max(list1), min(list1))
print (sum(list1), sum(list1) / len(list1))

[100, 500.45, 200, False, 400.5, True, 300] 7 <class 'list'> 2036183679296
500.45 False
1501.95 214.56428571428572
# list indexing and slicing index from left to right -> 0 1 2 3 4 list1 -> ["Sunday" "Tuesday", "Friday", "Saturday", "Thursday"] index from right to left -> -5 -4
-3 -2 -1

In [69]: list1 = ["Sunday", "Tuesday", "Friday", "Saturday", "Thursday"]


print (list1[2], list1[-3], list1[4], list1[-1])
print (list1[0::2], list1[1::2], list1[::-1])
print (list1[3][2:5], list1[-2][-6:-3])

Friday Friday Thursday Thursday


['Sunday', 'Friday', 'Thursday'] ['Tuesday', 'Saturday'] ['Thursday', 'Saturday', 'Friday', 'Tuesday', 'Sunda
y']
tur tur

In [74]: # defining empty list, empty tuple, empty dictionary, empty set and empty frozen-set
var1 = [] # empty list
print (var1, len(var1), type(var1), id(var1))
var1 = () # empty tuple
print (var1, len(var1), type(var1), id(var1))
var1 = {} # empty dictionary
print (var1, len(var1), type(var1), id(var1))
var1 = set() # empty set
print (var1, len(var1), type(var1), id(var1))
var1 = frozenset([]) # empty frozen set
print (var1, len(var1), type(var1), id(var1))

var1 = (9,) # singleton representation of a tuple


print (var1, type(var1), id(var1))

[] 0 <class 'list'> 2036183653440


() 0 <class 'tuple'> 2036066566208
{} 0 <class 'dict'> 2036183661568
set() 0 <class 'set'> 2036183762528
frozenset() 0 <class 'frozenset'> 2036074464864

In [78]: # converting string to list, tuple, set and frozen set


mystr = "my word mississippi"
print (mystr, len(mystr))
result = list(mystr)
print (result, len(result), type(result), id(result))
result = tuple(mystr)
print (result, len(result), type(result), id(result))
result = set(mystr)
print (result, len(result), type(result), id(result))
result = frozenset(mystr)
print (result, len(result), type(result), id(result))

my word mississippi 19
['m', 'y', ' ', 'w', 'o', 'r', 'd', ' ', 'm', 'i', 's', 's', 'i', 's', 's', 'i', 'p', 'p', 'i'] 19 <class 'lis
t'> 2036183652032
('m', 'y', ' ', 'w', 'o', 'r', 'd', ' ', 'm', 'i', 's', 's', 'i', 's', 's', 'i', 'p', 'p', 'i') 19 <class 'tupl
e'> 2036183510128
{'s', 'm', 'y', ' ', 'p', 'i', 'd', 'o', 'r', 'w'} 10 <class 'set'> 2036183762528
frozenset({'s', 'm', 'y', ' ', 'p', 'i', 'd', 'o', 'r', 'w'}) 10 <class 'frozenset'> 2036183762752

In [81]: # insert opeation on list


list1 = ["Monday", "Thursday", "Tuesday", "Sunday"]
print (list1, len(list1), type(list1), id(list1))
[Link]("Saturday")
print (list1, len(list1), type(list1), id(list1))
[Link]("Friday")
print (list1, len(list1), type(list1), id(list1))
[Link]("Wednesday")
print (list1, len(list1), type(list1), id(list1))

['Monday', 'Thursday', 'Tuesday', 'Sunday'] 4 <class 'list'> 2036183592320


['Monday', 'Thursday', 'Tuesday', 'Sunday', 'Saturday'] 5 <class 'list'> 2036183592320
['Monday', 'Thursday', 'Tuesday', 'Sunday', 'Saturday', 'Friday'] 6 <class 'list'> 2036183592320
['Monday', 'Thursday', 'Tuesday', 'Sunday', 'Saturday', 'Friday', 'Wednesday'] 7 <class 'list'> 2036183592320

In [90]: list1 = ["Monday", "Thursday", "Tuesday", "Sunday"]


print (list1, len(list1), type(list1), id(list1))
[Link](3, "Saturday")
print (list1, len(list1), type(list1), id(list1))
[Link](3, "Friday")
print (list1, len(list1), type(list1), id(list1))
[Link](1, "Wednesday")
print (list1, len(list1), type(list1), id(list1))
[Link](100, "Weekday")
print (list1, len(list1), type(list1), id(list1))
print(list1[7])

['Monday', 'Thursday', 'Tuesday', 'Sunday'] 4 <class 'list'> 2036150448064


['Monday', 'Thursday', 'Tuesday', 'Saturday', 'Sunday'] 5 <class 'list'> 2036150448064
['Monday', 'Thursday', 'Tuesday', 'Friday', 'Saturday', 'Sunday'] 6 <class 'list'> 2036150448064
['Monday', 'Wednesday', 'Thursday', 'Tuesday', 'Friday', 'Saturday', 'Sunday'] 7 <class 'list'> 2036150448064
['Monday', 'Wednesday', 'Thursday', 'Tuesday', 'Friday', 'Saturday', 'Sunday', 'Weekday'] 8 <class 'list'> 2036
150448064
Weekday

In [91]: # delete opeation on list


list1 = ['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday']
print (list1, len(list1), type(list1), id(list1))
[Link]()
print (list1, len(list1), type(list1), id(list1))

['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday'] 6 <class 'list'> 2036183658688


[] 0 <class 'list'> 2036183658688

In [92]: list1 = ['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday']


print (list1, len(list1), type(list1), id(list1))
del list1
print (list1, len(list1), type(list1), id(list1))

['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday'] 6 <class 'list'> 2036183680832


---------------------------------------------------------------------------
NameError Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_36520\[Link] in <module>
2 print (list1, len(list1), type(list1), id(list1))
3 del list1
----> 4 print (list1, len(list1), type(list1), id(list1))

NameError: name 'list1' is not defined

In [95]: list1 = ['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday']


print (list1, len(list1), type(list1), id(list1))
[Link]('Saturday')
print (list1, len(list1), type(list1), id(list1))
[Link]('Sunday')
print (list1, len(list1), type(list1), id(list1))
[Link]('Sunday')
print (list1, len(list1), type(list1), id(list1))

['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday'] 6 <class 'list'> 2036150184704


['Monday', 'Thursday', 'Tuesday', 'Friday', 'Sunday'] 5 <class 'list'> 2036150184704
['Monday', 'Thursday', 'Tuesday', 'Friday'] 4 <class 'list'> 2036150184704
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_36520\[Link] in <module>
5 [Link]('Sunday')
6 print (list1, len(list1), type(list1), id(list1))
----> 7 [Link]('Sunday')
8 print (list1, len(list1), type(list1), id(list1))

ValueError: [Link](x): x not in list

In [97]: list1 = ['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday']


print (list1, len(list1), type(list1), id(list1))
[Link]()
print (list1, len(list1), type(list1), id(list1))
[Link](2)
print (list1, len(list1), type(list1), id(list1))

['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday'] 6 <class 'list'> 2036185964864


['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday'] 5 <class 'list'> 2036185964864
['Monday', 'Thursday', 'Tuesday', 'Friday'] 4 <class 'list'> 2036185964864

In [98]: # update opeation on list


list1 = ['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday']
print (list1, len(list1), type(list1), id(list1))
list1[3] = "Wednesday"
print (list1, len(list1), type(list1), id(list1))

['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday'] 6 <class 'list'> 2036183445312


['Monday', 'Thursday', 'Saturday', 'Wednesday', 'Friday', 'Sunday'] 6 <class 'list'> 2036183445312

In [105… list1 = ['Monday', 'Thursday', 'Saturday', 'Tuesday']


print (list1, len(list1), type(list1), id(list1))
list2 = ['Friday', 'Sunday']
print (list2, len(list2), type(list2), id(list2))
result = list1 + list2 # list concatenation
print (result, len(result), type(result), id(result))
list1+=list2
print (list1, len(list1), type(list1), id(list1))

['Monday', 'Thursday', 'Saturday', 'Tuesday'] 4 <class 'list'> 2036183448640


['Friday', 'Sunday'] 2 <class 'list'> 2036185975552
['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday'] 6 <class 'list'> 2036185998208
['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday'] 6 <class 'list'> 2036183448640

In [104… list1 = ['Monday', 'Thursday', 'Saturday', 'Tuesday']


print (list1, len(list1), type(list1), id(list1))
list2 = ['Friday', 'Sunday']
print (list2, len(list2), type(list2), id(list2))
[Link](list2) # extending the list
print (list1, len(list1), type(list1), id(list1))

['Monday', 'Thursday', 'Saturday', 'Tuesday'] 4 <class 'list'> 2036185998208


['Friday', 'Sunday'] 2 <class 'list'> 2036185998976
['Monday', 'Thursday', 'Saturday', 'Tuesday', 'Friday', 'Sunday'] 6 <class 'list'> 2036185998208

In [106… list1 = ['Monday', 'Thursday', 'Saturday', 'Tuesday']


print (list1, len(list1), type(list1), id(list1))
list2 = ['Friday', 'Sunday']
print (list2, len(list2), type(list2), id(list2))
result = [list1, list2] # list of lists
print (result, len(result), type(result), id(result))

['Monday', 'Thursday', 'Saturday', 'Tuesday'] 4 <class 'list'> 2036185998976


['Friday', 'Sunday'] 2 <class 'list'> 2036186007744
[['Monday', 'Thursday', 'Saturday', 'Tuesday'], ['Friday', 'Sunday']] 2 <class 'list'> 2036183448640

You might also like