repr(object) 'official' string representation of an object
returns the string data type.
Using set object
We used one set object here.
We can use any type of object and get the string representation of the same.
my_data={5,6,2,4}
print(type(my_data)) #<class 'set'>
my_data2=repr(my_data)
print(type(my_data2)) #<class 'str'>
print(repr(my_data)) #{5,6,2,4}
Output
<class 'set'>
<class 'str'>
{2, 4, 5, 6}
Using eval()
By using eval() we can get back the object. In above code my_data2 is an string object, using this we can create our original set object.
print(type(eval(my_data2)))
Output
<class 'set'>
Using str()
Our built in function str() also returns the string from the object but here we get the 'informal' or nicely printable string representation of an object. Such returned string may not work with eval().
However repr() is typically used for debugging, so it is important that the representation is information-rich and unambiguous. See this example.
my_str = """Hi"""
print(repr(my_str)) # Output: 'Hi'
print(str(my_str)) # Output: Hi
#eval(str(my_str) == my_str) # Gives a SyntaxError
print(eval(repr(my_str)) == my_str) # Output: True
Example using Date object
We created one date object to get the present date and time. Check the difference in output of str() and repr()
import datetime
today = datetime.datetime.now()
print(str(today)) # Output: '2022-05-03 18:36:44.459740'
print(repr(today)) # Output: 'datetime.datetime(2022, 5, 3, 18, 36, 44, 459740)'
Output
2022-05-03 18:36:44.459740
datetime.datetime(2022, 5, 3, 18, 36, 44, 459740)
«All Built in Functions in Python
dir() compile() exec()
eval()
← Subscribe to our YouTube Channel here