Python String

Filed Under: Python

Good day, learners. In this tutorial we are going to learn Python String. In our previous tutorial we learned about Python Tuple.

Python String

One of the most common data type of python is String. “str” is the built in string class of python. String literals can be enclosed by single or double quotes. You can see some example of string literals below


literal1 = "This is the first literal"
literal2 = "This is the second literal"

Accessing the Python String

You can print the whole string or a specific portion of the string which is called substring. To do so, you need to know some basics. The Python Strings are indexed from zero. That means if the size of the string is 5, the index of the elements are 0 to 4. The following code will help you to understand the context


word = "Tobacco"
#index: 0123456

#This will print the whole word
print(word)    	#Tobacco

#This will print the size of the string
print(len(word))	#7

#This will print the 0th element of the string which is T
print(word[0])	#T

#prints the 1st element (o) to 4th element (c) of the string
print(word[1:5])	#obac

#prints the substring from 3rd element to the end of the string
print(word[3:])	#acco

#prints from the 0th element to 2nd element of the string
print(word[:3])	#Tob

The output of the following code will be


================== RESTART: /home/imtiaz/str.py ==================
Tobacco
7
T
obac
acco
Tob

Concatenating the python string

You can concat two string by simply placing a “+” operator between them. You can concat a number with the string, but the condition is you have to change the number to a string. You can use str() function to convert a number to string. The following example will give you some idea about this


str1 = "I love"
str2 = "I hate"
str3 = " you!"
#example of concatenation between two string
print(str1 + str3)

#this will give an error
#print("My age is "+15)

#after converting the number to a string, concatenate it with a string
print("My age is "+str(15))

The output of the following code will be

Output of Python String Concatenation

Updating Python String

Python string does not allow to update element of the string. However, you can try slicing technique, to create a new string withe updated specific index of the string. Suppose, we have a word “toek”, but we want to make it “took”. Now, look at the word, the element “e” that needs to be updated is at index 2. So we can slice the substrings before and after “e”, those are “to” and “k” respectively. Then we can concatenate “to” with the updated element “o” and after that we can concatenate the resultant string with “k”. So the code will illustrate the idea


str1 = 'toek'
print("Before Update:")
print(str1)

first = str1[:2] #that is 'to'
update = 'o'
last = str1[3:] #that is 'k'

str1 = first + update + last

print("After Update:")
print(str1)

The output will be


================== RESTART: /home/imtiaz/str3.py ==================
Before Update:
toek
After Update:
took
>>> 

Python String Methods

There are some methods to manipulate Python String. You can find all the python string method to their official here. Most common python string methods are shown below:

  • lower(): returns the lowercase version of the string
  • upper(): returns the uppercase version of the string
  • strip(): returns a string with whitespace removed from the start and end
  • isalnum(): return true if all characters in the string are alphanumeric and there is at least one character, false otherwise.
  • isalpha(): return true if all characters in the string are alphabetic and there is at least one character, false otherwise.
  • title(): return a title-cased version of the string where words start with an uppercase character and the remaining characters are lowercase.
  • join(list): joins the elements in the given list together using the string as the delimiter
  • find(substring): returns the lowest index in the string where substring is found. If substring is not found, it returns -1.

Escape Sequence with Python String

You can put escape sequence in string literal to perform some special task. Suppose, you have two words “cat” and “dog”. You want to put them in one string literal but want then in separate line. To do so, you can add ‘\n’ between these two words. The following example will help you to understand.


task = 'cat\ndog'

print(task)

The output will print ‘cat’ and ‘dog’ in separate line. There are some escape sequences. If you’re interested, you can find it here

Python String contains

If you want to check if a substring is present in a string or not, then we can use in operator as shown in below example.


str1 = "I am here"

if "I" in str1:
    print("Found")
else:
    print("Not Found")

Python String split

Sometimes we get a long string with delimiter and we want to split them into a list. For example it’s most common in CSV data. We can use string split function for this.


x = "1,2,3"

y = x.split(",")

print(y)

It will print below output.


>>> 
================= RESTART: /Users/pankaj/Desktop/string1.py =================
['1', '2', '3']
>>> 

So, this is all about basic Python String. Hope that you understood well. If you have any query regarding Python String, feel free to ask in the comment section.

Comments

  1. SOMESH CHATTERJEE says:

    Thank you for this tutorials ,Sir,, It is radlly helpful,,, kindly send some eBooks on Python and Scala on my email..
    Thanks and Regards,

Leave a Reply

Your email address will not be published. Required fields are marked *

close
Generic selectors
Exact matches only
Search in title
Search in content
Search in posts
Search in pages