본문 바로가기

카테고리 없음

파이썬 if __name__ == "__main__" / __init__ 등등 의미, 활용하기

by m_ahh 2020. 11. 20.
반응형

 

(1) 

if __name__ == "__main__":
	main()

이 조건문은 모듈 내의 코드가 바로 실행되는 것을 막아준다. 파이썬 스크립트가 실행이 될때, 사용한 모듈에 있는 코드가 자동적으로 모두 실행이 되는데, 그것을 방지해주는 것! 이 조건문은 스크립트가 직접 실행될때만 메인함수가 실행되게 한다. 

 

(2)

__init__

class ExampleClass:
  def __init__(self, x, y):
    self.x=x
    self.y=y
     
  def other_function(self):
  	"""you can use x and y in here"""
  

__init__ 은 새로 클래스를 정의할때마다 해준다. 해당 클래스의 객체의 초기상태를 정의해준다. 이 __init__함수안에서 self. 로 정의된 객체 인스턴스들은 다른 def 함수에서 호출 된다. 즉, __init__ 클래스에서 객체를 만들어 주는 생성자 역할을 하게 된다. 

 

(3)

이미 정의된 내장함수에 대해 새로운 함수를 정의하고 싶을때는 __를 붙여서 사용한다.

def __len__(self):
	return something
반응형

댓글