print(car1) 과 print(car_list) 의 차이에 주의할 것
print(car1) - str 로 출력
print(car_list) - repr 로 출력
class Car():
def __init__(self, company, details):
self._company = company
self._details = details
def __str__(self): # 매직 메소드, 간단한 사용자 레벨의 출력
return 'str : {} - {}'.format(self._company, self._details)
def __repr__(self): # 매직 메소드, 엄격한 개발자 레벨의 출력
return 'repr : {} - {}'.format(self._company, self._details)
car1 = Car('Ferrari', {'color' : 'White', 'horsepower': 400, 'price': 8000})
car2 = Car('Bmw', {'color' : 'Black', 'horsepower': 270, 'price': 5000})
car3 = Car('Audi', {'color' : 'Silver', 'horsepower': 300, 'price': 6000})
print(car1)
print(car2)
print(car3)
// 객체속성까지 출력
print(car1.__dict__)
print(car2.__dict__)
print(car3.__dict__)
-------------------------------------------[result]
str : Ferrari - {'color': 'White', 'horsepower': 400, 'price': 8000}
str : Bmw - {'color': 'Black', 'horsepower': 270, 'price': 5000}
str : Audi - {'color': 'Silver', 'horsepower': 300, 'price': 6000}
{'_company': 'Ferrari', '_details': {'color': 'White', 'horsepower': 400, 'price': 8000}}
{'_company': 'Bmw', '_details': {'color': 'Black', 'horsepower': 270, 'price': 5000}}
{'_company': 'Audi', '_details': {'color': 'Silver', 'horsepower': 300, 'price': 6000}}
-------------------------------------------
car_list = []
car_list.append(car1)
car_list.append(car2)
car_list.append(car3)
print(car_list)
-------------------------------------------[result]
[repr : Ferrari - {'color': 'White', 'horsepower': 400, 'price': 8000}, repr : Bmw - {'color': 'Black', 'horsepower': 270, 'price': 5000}, repr : Audi - {'color': 'Silver', 'horsepower': 300, 'price': 6000}]
-------------------------------------------
for x in car_list:
print(repr(x))
print(x)
-------------------------------------------[result]
repr : Ferrari - {'color': 'White', 'horsepower': 400, 'price': 8000}
str : Ferrari - {'color': 'White', 'horsepower': 400, 'price': 8000}
repr : Bmw - {'color': 'Black', 'horsepower': 270, 'price': 5000}
str : Bmw - {'color': 'Black', 'horsepower': 270, 'price': 5000}
repr : Audi - {'color': 'Silver', 'horsepower': 300, 'price': 6000}
str : Audi - {'color': 'Silver', 'horsepower': 300, 'price': 6000}
-------------------------------------------
'Python > Intermediate' 카테고리의 다른 글
[Python] NamedTuple (0) | 2021.05.21 |
---|---|
[Python] Magic Method(2) (0) | 2021.05.21 |
[Python] Magic Method(1) (0) | 2021.05.21 |
[Python] Class(3) - Class Method, Static Method (0) | 2021.05.21 |
[Python] Class(2) - self, 매직 매소드 (0) | 2021.05.20 |