Python str() function is used to convert an object to its string representation. It is a built-in function that can be used to convert objects of different data types, such as integers, and floats.
Example:
In the given example, we assign an integer value to a variable and convert that integer variable to the string variable and print it in Python.
val = 10
val_str = str (val)
print (val_str)
|
Output:
10
Python str() Function Syntax
Syntax: str(object, encoding=’utf-8?, errors=’strict’)
Parameters:
- object: The object whose string representation is to be returned.
- encoding: Encoding of the given object.
- errors: Response when decoding fails.
Returns: String version of the given object
str() function in Python Example
Demonstration of str() function
In the given example, we are using str() on an empty string and string.
# Python program to demonstrate # strings # Empty string s = str ()
print (s)
# String with values s = str ( "GFG" )
print (s)
|
Output:
GFG
Convert an Integer/Float to a String in Python
In the given code, we are converting integer and float to the string type with str() in Python. For more
# Python program to demonstrate # strings num = 100
s = str (num)
print (s, type (s))
num = 100.1
s = str (num)
print (s, type (s))
|
Output:
100 <class 'str'> 100.1 <class 'str'>
Convert Bytes to a String in Python
In the first example, the errors=’replace’ argument is used. When we are founding abnormal characters in the string, it replaces them with the ‘?’ character. In the second example, the errors=’backslashreplace’ argument is used. It replaces abnormal characters in a string with backslash escapes. In the third example, the errors=’xmlcharrefreplace’ argument is used. It replaces abnormal characters in a string with XML character references.
# Declare a byte object b = bytes( 'Café' , encoding = 'utf-8' )
# Convert UTF-8 byte object to ASCII with errors replaced print ( str (b, encoding = 'ascii' , errors = 'replace' ))
# Convert UTF-8 byte object to ASCII with backslashreplace print ( str (b, encoding = 'ascii' , errors = 'backslashreplace' ))
|
Output :
Caf�� Caf\xc3\xa9
Exceptions of str() in Python
There are six types of error taken by this function.
- strict (default): it raises a UnicodeDecodeError.
- ignore: It ignores the unencodable Unicode
- replace: It replaces the unencodable Unicode with a question mark
- xmlcharrefreplace: It inserts XML character reference instead of the unencodable Unicode
- backslashreplace: inserts a \uNNNN Espace sequence instead of an unencodable Unicode
- namereplace: inserts a \N{…} escape sequence instead of an unencodable Unicode
Example:
# Python program to demonstrate # str() a = bytes( "ŽString" , encoding = 'utf-8' )
s = str (a, encoding = "ascii" , errors = "ignore" )
print (s)
|
Output:
String
In the above example, the character Ž should raise an error as it cannot be decoded by ASCII. But it is ignored because the errors are set as ignore.