import datetime
now = datetime.datetime.now()
now
now.__str__() # '2022-05-14 21:08:42.273530'
now.__repr__() # 'datetime.datetime(2022, 5, 14, 21, 8, 42, 273530)'
class Person:
def __init__(self, person_name, person_age):
self.name = person_name
self.age = person_age
p1 = Person("yuna",100)
p1.__str__() # '<__main__.Person object at 0x000002B584D43F70>'
p1.__repr__() # '<__main__.Person object at 0x000002B584D43F70>'
# default implementation is useless
class Person:
def __init__(self, person_name, person_age):
self.name = person_name
self.age = person_age
def __str__(self):
return f"저의 이름은 {self.name}이고 나이는 {self.age}입니다"
def __repr__(self):
return f"저의 이름은 {self.name}이고 나이는 {self.age}입니다"
p1 = Person("yunaa",32)
p1.__str__() # '저의 이름은 yunaa이고 나이는 32입니다'
p1.__repr__() # '저의 이름은 yunaa이고 나이는 32입니다'
https://www.geeksforgeeks.org/dunder-magic-methods-python/
https://www.journaldev.com/22460/python-str-repr-functions