W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.
Copyright 1999-2022 by Refsnes Data. All Rights Reserved.
W3Schools is Powered by W3.CSS.
Strings
Strings in python are surrounded by either single quotation marks, or double quotation marks.
'hello' is the same as "hello".
You can display a string literal with the print[]
function:
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:
Multiline Strings
You can assign a multiline string to a variable by using three quotes:
Example
You can use three double quotes:
a = """Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua."""
print[a]
Try it Yourself »
Or three single quotes:
Example
a = '''Lorem ipsum dolor sit amet,
consectetur
adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.'''
print[a]
Try it Yourself »
Note: in the result, the line breaks are inserted at the same position as in the code.
Strings are Arrays
Like many other popular programming languages, strings in Python are arrays of bytes representing unicode characters.
However, 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
Get the character at position 1 [remember that the first character has the position 0]:
a = "Hello, World!"
print[a[1]]
Try it Yourself »
Looping Through a String
Since strings are arrays, we can loop through the characters in a string, with a for
loop.
Example
Loop through the letters in the word "banana":
for x in "banana":
print[x]
Try it Yourself »
Learn more about For Loops in our Python For Loops chapter.
String Length
To get the length of a string, use the len[]
function.
Example
The len[]
function returns the length of a string:
a = "Hello, World!"
print[len[a]]
Try it Yourself »
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]
Try it Yourself »
Use it in an if
statement:
Example
Print only if "free" is present:
txt = "The best things in life are free!"
if "free" in txt:
print["Yes,
'free' is present."]
Try it Yourself »
Learn more about If statements in our Python If...Else chapter.
Check if NOT
To check if a certain phrase or character is NOT present in a string, we can use the keyword not in
.
Example
Check if "expensive" is NOT present in the following text:
txt = "The best things in life are free!"
print["expensive" not in txt]
Try it Yourself »
Use it in an if
statement:
Example
print only if "expensive" is NOT present:
txt = "The best things in life are free!"
if "expensive" not in txt:
print["No, 'expensive' is NOT present."]
Try it Yourself »
In this tutorial, you will learn about Python str[] with the help of examples.
The str[]
method returns the string representation of a given object.
Example
# string representation of Adam
print[str['Adam']]
# Output: Adam
str[] Syntax
The syntax of str[]
is:
str[object, encoding='utf-8', errors='strict']
Here, encoding and errors parameters are only meant to be used when the object type is bytes or bytearray.
str[] Parameters
The str[]
method takes three parameters:
- object - whose string representation is to be returned
- encoding - that the given byte object needs to be decoded to [can be UTF-8, ASCII, etc]
- errors - a response when decoding fails [can be strict, ignore, replace, etc]
Note: There are six types of errors: strict, ignore, replace, xmlcharrefreplace, namereplace, backslashreplace. The default error is strict. ____________________________________________________________________________
str[] Return Value
The str[]
method returns:
- a printable string representation of a given object
- string representation of a given byte object in the provided encoding
Example 1: Python[] String
# string representation of Luke
name = str['Luke']
print[name]
# string representation of an integer 40
age = str[40]
print[age]
# string representation of a numeric string 7ft
height = str['7ft']
print[height]
Output
Luke 40 7ft
In the above example, we have used the str[]
method with different types of arguments like string, integer, and numeric string.
Example 2: str[] with Byte Objects
We can use the str[]
method with byte objects which are defined by the bytes[]
method.
In this case, we need to specify the encoding that we want to convert the byte objects to and the type of error checking that the str[]
method can perform.
# declare a byte object
b = bytes['pythön', encoding='utf-8']
# convert a utf-8 byte object to ascii with errors ignored
print[str[b, encoding='ascii', errors='ignore']]
# convert a utf-8 byte object to ascii with strict error
print[str[b, encoding='ascii', errors='strict']]
Output
pythn UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 4: ordinal not in range[128]
In the first example, we have created a byte object b with the string 'pythön'
and the encoding utf-8
.
We have passed the b object to the str[]
method and specified the encoding to ascii
.
Here, we have set the errors
parameter to
ignore
so, the str[]
method ignores the character 'ö'
. Since the method can't decode this character to ascii
, we get the output pythn.
Similarly, in the second example, we've set the error to strict
. In this case, the str[]
method will take the character 'ö'
into account and produce UnicodeDecodeError as the output.
Recommended Readings:
- Python chr[]
- Python int[]
- Python ascii[]
- Python bytes[]