0% found this document useful (0 votes)
3 views

String in Python New

The document provides a comprehensive overview of strings in Python, detailing their creation, indexing, immutability, and various operations such as concatenation, repetition, membership, and slicing. It also explains string traversal methods using loops and highlights built-in string functions and methods for manipulation and analysis. Key concepts include the use of positive and negative indexing, the immutability of strings, and the application of methods like len(), title(), lower(), upper(), and others.

Uploaded by

Ayush Singh
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)
3 views

String in Python New

The document provides a comprehensive overview of strings in Python, detailing their creation, indexing, immutability, and various operations such as concatenation, repetition, membership, and slicing. It also explains string traversal methods using loops and highlights built-in string functions and methods for manipulation and analysis. Key concepts include the use of positive and negative indexing, the immutability of strings, and the application of methods like len(), title(), lower(), upper(), and others.

Uploaded by

Ayush Singh
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
You are on page 1/ 10

Strings in Python

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).

>>> str1 = 'Hello World!' #initializes a string str1


>>> str1[0] #gives the first character of str1
'H'
>>> str1[6] #gives seventh character of str1
'W'
>>> str1[15] #gives error as index is out of range
IndexError: string index out of range
The index can also be an expression including variables and operators but the expression must
evaluate to an integer.

#an expression resulting in an integer index


#so gives 6th character of str1
>>> str1[2+4]
'W'
#gives error as index must be an integer
>>> str1[1.5]
TypeError: string indices must be integers

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.

Negative Index -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1

String H e l l o W o r l d !
Positive Index 0 1 2 3 4 5 6 7 8 9 10 11

>>> str1 = 'Hello World!'


>>> str1[-1] #gives first character from right
'!'
>>> str1[-12]#gives last character from right
'H'

An inbuilt function len() in Python returns the length of the string that is passed as parameter. For
example, the length of string str1 = 'Hello World!' is 12.

#length of the string is assigned to n


>>> n = len(str1)
>>> print(n)
12
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.

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!'

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 2 times
>>> str1 * 2
'HelloHello'
#repeat the value of str1 5 times
>>> 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.

>>> 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).

>>> str1 = 'Hello World!'


#gives substring starting from index 1 to 4
>>> str1[1:5]
'ello'
#gives substring starting from 7 to 9
>>> str1[7:10]
'orl'
#index that is too big is truncated down to
#the end of the string
>>> str1[3:20]
'lo World!'
#first index > second index results in an
#empty '' string
>>> str1[7:2]
If the first index is not mentioned, the slice starts from index.
#gives substring from index 0 to 4
>>> str1[:5]
'Hello'
If the second index is not mentioned, the slicing is done till the length of the string.

#gives substring from index 6 to end


>>> str1[6:]
'World!'

The slice operation can also take a third index that specifies the ‘step size’.
For example, str1[n:m:k], means every kth character has to be extracted from the string str1
starting from n and ending at m-1. By default, the step size is one.

>>> str1[0:10:2]
'HloWr'
>>> str1[0:10:3]
'HlWl'

Negative indexes can also be used for slicing.

#characters at index -6,-5,-4,-3 and -2 are


#sliced
>>> str1[-6:-1]

'World'

If we ignore both the indexes and give step size as -1

#str1 string is obtained in the reverse order


>>> str1[::-1]
'!dlroW olleH'
Traversing a String:

We can access each character of a string or traverse a string using for loop and while loop.

String Traversal Using for Loop:

>>> str1 = 'Hello World!'


>>> for ch in str1:
print(ch,end = '')
Hello World! #output of for 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.

String Traversal Using while Loop:

>>> str1 = 'Hello World!'


>>> index = 0
#len(): a function to get length of string
>>> while index < len(str1):
print(str1[index],end = '')
index += 1
Hello World! #output of while loop

Here while loop runs till the condition index < len(str) is True, where index varies from 0 to
len(str1) -1.
String Methods and Built-in Functions:

Python has several built-in functions that allow us to work with strings.

Returns the length of the >>> str1 = 'Hello World!'


len() >>> len(str1)
given string
12
Returns the string with first letter of >>> str1 = 'hello WORLD!'
title() every word in the string in uppercase >>> str1.title()
'Hello World!'
and rest in lowercase

Returns the string with all uppercase >>> str1 = 'hello WORLD!'
lower() >>> str1.lower()
letters converted to lowercase
'hello world!'

Returns the string with all lowercase >>> str1 = 'hello WORLD!'
upper() >>> str1.upper()
letters converted to uppercase
'HELLO WORLD!'

Returns number of times substring str >>> str1 = 'Hello World! Hello
Hello'
occurs in the given string.
>>> str1.count('Hello',12,25)
count(str, If we do not give start index and end
2>
start, end) index then searching starts from index >> str1.count('Hello')
0 and ends at length of the string 3

>>> str1 = 'Hello World! Hello


Returns the first occurrence of index of Hello'
substring str occurring in the given >>> str1.find('Hello',10,20)
string. If we do not give start and end 13
find(str,start,
end) then searching starts from index 0 and >>> str1.find('Hello',15,25)
ends at length of the string. If the 19
substring is not present in the given >>> str1.find('Hello')
0>
string, then the function returns -1
>> str1.find('Hee')
-1
>>> str1 = 'Hello World! Hello
Hello'
Same as find() but raises an exception if >>> str1.index('Hello')
index(str,
the substring is not present in the given 0>
start, end)
string >> str1.index('Hee')
ValueError: substring not
found

>>> str1 = 'Hello World!'


>>> str1.endswith('World!')
True
Returns True if the given string ends >>> str1.endswith('!')
endswith() with the supplied substring otherwise True
returns False >>> str1.endswith('lde')
False
>>> str1 = 'Hello World!'
Returns True if the given string starts >>> str1.startswith('He')
startswith() with the supplied substring otherwise True
returns False >>> str1.startswith('Hee')
False
>>> str1 = 'HelloWorld'
Returns True if characters of the given >>> str1.isalnum()
string are either alphabets or numeric. True
If whitespace or special symbols are >>> str1 = 'HelloWorld2'
isalnum()
part of the given string or the string is >>> str1.isalnum()
empty True
it returns False >>> str1 = 'HelloWorld!!'
>>> str1.isalnum()
False
>>> str1 = 'hello world!'
>>> str1.islower()
True
>>> str1 = 'hello 1234'
Returns True if the string is non-empty >>> str1.islower()
and has all lowercase alphabets, or has True
at least one character as lowercase >>> str1 = 'hello ??'
islower()
alphabet >>> str1.islower()
and rest are non-alphabet characters True
>>> str1 = '1234'
>>> str1.islower()
False
>>> str1 = 'Hello World!'
>>> str1.islower()
False
>>> str1 = 'HELLO WORLD!'
>>> str1.isupper()
True
>>> str1 = 'HELLO 1234'
>>> str1.isupper()
Returns True if the string is non-empty
True
and has all uppercase alphabets, or has >>> str1 = 'HELLO ??'
isupper() at least one character as uppercase >>> str1.isupper()
character True
and rest are non-alphabet characters >>> str1 = '1234'
>>> str1.isupper()
False
>>> str1 = 'Hello World!'
>>> str1.isupper()
False
>>> str1 = ' \n \t \r'
>>> str1.isspace()
True
Returns True if the string is non-empty >>> str1 = 'Hello \n'
isspace() and all characters are white spaces >>> str1.isspace()
(blank, tab, newline, carriage return) False
>>> str1 = 'Hello World!'
Returns True if the string is non-empty >>> str1.istitle()
and title case, i.e., the first letter of
istitle() True
every word in the string in uppercase >>> str1 = 'hello World!'
and rest >>> str1.istitle()
in lowercase False
>>> str1 = ' Hello World!
Returns the string after removing the
lstrip() '>
spaces only on the left of the string >> str1.lstrip()
'Hello World!
>>> str1 = ' Hello World!
Returns the string after removing the
rstrip() '
spaces only on the right of the string >>> str1.rstrip()
' Hello World!'
• with strings in Python.

You might also like