반응형
__str__ 는 특수 메서드 중 하나입니다.
class Element():
def __init__(self, name, symbol, number):
self.name = name
self.symbol = symbol
self.number = number
def __str__(self):
print("name:{0} symbole:{1} number:{2}".format(self.name, self.symbol, self.number))
특수 메서드는 print 가 아닌 return 으로 값을 받아줘야 에러없이 출력이 되는데
위 에어는 print( ) 로 값을 받아서 생긴 에러였네요
print( ) --> return 으로 해야합니다.
class Element():
def __init__(self, name, symbol, number):
self.name = name
self.symbol = symbol
self.number = number
def __str__(self):
return "name:{0} symbole:{1} number:{2}".format(self.name, self.symbol, self.number)
아래 stakoverflow 에서 이유를 확인할 수 있습니다.
Python: "TypeError: __str__ returned non-string" but still prints to output?
I have this piece of code which creates a new note..WHen I try to print I get the following error even though it prints the output Error: C:\Python27\Basics\OOP\formytesting>python notebook.py ...
stackoverflow.com
특수 메서드에 대해서 확인하려면 아래 링크를 참고해주세요
위키독스
온라인 책을 제작 공유하는 플랫폼 서비스
wikidocs.net
반응형