2012-12-11 2 views
2

얼마 전 나는 한 가지 질문을했고 많은 사람들이 __str__()str(some object)으로 바꿀 것을 제안했습니다.str()을 사용하는 것이 __str보다 낫다()

e_address = f_name+l_name+year.__str__()+day.__str__() 

변경에 :

그래서 내 질문이 더 나은 이유입니다
e_address = f_name+l_name+str(year)+str(day) 

예를 들어

? 성능 차이가 있습니까? 아니면 더 평범한 프로그래밍 방식입니까?

답변

8

__str__()이있는 경우 str()이 호출하는 후크 방법입니다. 이러한 메서드가 정의되지 않은 경우 str() 함수는 적절한 기본값으로 돌아갑니다. 후크는 기본 동작을 재정의하기 위해 존재하며, 항상 구현된다는 가정을해서는 안됩니다.

또한 str() 호출 가능을 사용하는 것이 더 읽기 쉽습니다.

+0

답장을 보내 주셔서 감사합니다. – Vor

4

타이핑이 적어 코드를 읽기가 쉽습니다.

관련 문제