Python - Strings
Strings in python are surrounded by either single quotation
marks, or double quotation marks.
'hello' is the same as "hello".
Example
print("Hello")
print('Hello')
Quotes Inside Quotes
Example
print("It's alright")
print("He is called 'Johnny'")
print('He is called "Johnny"')
Assign String to a Variable
Assigning a string to a variable is done with the variable name followed by an equal sign and
the string:
a = "Hello"
print(a)
Multiline Strings
You can assign a multiline string to a variable by using three quotes:
a = """Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua."""
print(a)
Or three single quotes:
a = '''Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.'''
print(a)
Strings are Arrays
Python does not have a character data type, a single character is simply a string with a length of 1.
Square brackets can be used to access elements of the string.
Example
a = "Hello, World!"
print(a[1])
Looping Through a String
Since strings are arrays, we can loop through the characters in a string, with a for loop.
for x in "Welcome":
print(x)
String Length
To get the length of a string, use the len() function.
a = "Hello, World!"
print(len(a))
o/p:
13
Check String
To check if a certain phrase or character is present in a string, we can use the keyword in.
Example
Check if "free" is present in the following text:
txt = "The best things in life are free!"
print("free" in txt)
o/p:
True
Print only if "free" is present:
txt = "The best things in life are free!"
if "free" in txt:
print("Yes, 'free' is present.")
o/p:
Yes, 'free' is present.
Check if NOT
To check if a certain phrase or character is NOT present in a string, we can use the keyword not in.
txt = "The best things in life are free!"
print("expensive" not in txt)
true
Python - Slicing Strings
Slicing
You can return a range of characters by using the slice syntax.
Specify the start index and the end index, separated by a colon, to return a part of the string.
Example
Get the characters from position 2 to position 5 (not included):
b = "Hello, World!"
print(b[2:5])
llo
Slice From the Start
b = "Hello, World!"
print(b[:5])
Hello
Slice To the End
b = "Hello, World!"
print(b[2:])
llo, World!
Negative Indexing
Use negative indexes to start the slice from the end of the string:
Example
Get the characters:
From: "o" in "World!" (position -5)
To, but not included: "d" in "World!" (position -2):
b = "Hello, World!"
print(b[-5:-2])
orl
Python - Modify Strings
Python has a set of built-in methods that you can use on strings.
Upper Case
Example
The upper() method returns the string in upper case:
a = "Hello, World!"
print([Link]())
Lower Case
The lower() method returns the string in lower case:
a = "Hello, World!"
print([Link]())
Remove Whitespace
Whitespace is the space before and/or after the actual text, and very often you want to remove this
space.
The strip() method removes any whitespace from the beginning or the
end:
a = " Hello, World! "
print([Link]()) # returns "Hello, World!"
Replace String
The replace() method replaces a string with another string:
a = "Hello, World!"
print([Link]("H", "J"))
Jello, World!
Split String
The split() method returns a list where the text between the specified separator becomes the list
items.
Example
The split() method splits the string into substrings if it finds instances of the separator:
a = "Hello, World!"
print([Link](",")) # returns ['Hello', ' World!']
['Hello', ' World!']
Python - String Concatenation
String Concatenation
To concatenate, or combine, two strings you can use the + operator.
Merge variable a with variable b into variable c:
a = "Hello"
b = "World"
c = a + b
print(c)
HelloWorld
Example
To add a space between them, add a " ":
a = "Hello"
b = "World"
c = a + " " + b
print(c)
Hello World
Python - Format – Strings
String Format
As we learned in the Python Variables chapter, we cannot combine strings and numbers like this:
Example
age = 36
#This will produce an error:
txt = "My name is John, I am " + age
print(txt)
F-Strings
F-String was introduced in Python 3.6, and is now the preferred way of formatting strings.
To specify a string as an f-string, simply put an f in front of the string literal, and add curly
brackets {} as placeholders for variables and other operations.
age = 36
txt = f"My name is John, I am {age}"
print(txt)
Python - Escape Characters
To insert characters that are illegal in a string, use an escape character.
An escape character is a backslash \ followed by the character you want to insert.
You will get an error if you use double quotes inside a string that is surrounded by double quotes:
txt = "We are the so-called "Vikings" from the north."
To fix this problem, use the escape character \":
Example
The escape character allows you to use double quotes when you normally would not be allowed:
txt = "We are the so-called \"Vikings\" from the north."
\r Carriage Return
txt = "Hello\rWorld!"
print(txt)
World!
txt = "Hello\tWorld!"
print(txt)
Hello World!