파이선 클래스 공부중 질문 실행이 않되네요.. 잘못된곳이
조회수 2519회
파이썬 클래스 관련해서 공부중인데요! 클래스를 정의하고 진행했는데 실행이 되지만 결과 값이 않나와서요 도움 부탁드립니다.
class myObj(object):
def set_value(self, item):
self.item=item
def get_value(self):
return self.item
def M_calc(self):
self.item=self.item+10
return self.item
if __name__ == "__name__":
result=[]
obj=myObj()
obj.set_value(100)
result.append(obj)
obj01=myObj()
obj01.set_value(200)
result.append(obj01)
map(lambda item:item.M_calc(), result)
for m_obj in result:
print(m_obj.get_value())
원하는 실행결과는
100
200
이 출력되는겁니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
if문을 아래와 같이 바꿔보시기 바랍니다.
if __name__ == "__main__":
해당 스크립트가 인터프리터로 직접 실행되는지 다른 모듈에서 import 를 하여 실행되는 지를 알기위해
if __name__ == "__main__":
가 필요합니다. 직접 실행되는 경우 시작점(자바의 메인함수)역할을 하게됩니다.여기에서
if __name__ == "__main__": 의 의미
챕터를 확인해보세요.해시코드에도 좋은 설명이 있네요. http://hashcode.co.kr/questions/3/if-__name__-__main__은-왜쓰나요
댓글 입력