2009-10-20 6 views
4

파이썬 생성자 메소드 용 코드를 작성하는 데 도움이 필요합니다.파이썬의 생성자

x, y, angle 

이의 예는 무엇인가

이 생성자 방법은 다음 세 가지 매개 변수를 것?

+2

인가 :

def __init__(self, x, y, angle): self.x = x self.y = y self.angle = angle 

당신은 여기에 대한 자세한 내용을보실 수 있습니다 :이 경우 있도록 –

+0

//,이 질문을 향상 시키길 원하십니까? –

답변

14
class MyClass(object): 
    def __init__(self, x, y, angle): 
    self.x = x 
    self.y = y 
    self.angle = angle 

생성자는 항상 __init__()이라는 함수로 작성됩니다. 항상 생성되는 인스턴스에 대한 참조를 첫 번째 인수로 취해야합니다. 일반적으로 self이라고합니다. 나머지 인수는 프로그래머에게 달려있다.

첫 번째 줄의 object은 수퍼 클래스입니다. 즉 MyClassobject의 하위 클래스입니다. 이는 Python 클래스 정의에서 일반적입니다.

self. 구문을 사용하여 인스턴스의 필드 (구성원)에 액세스합니다.

+0

가능한 한 누군가가 설명 할 수있어서 이해할 수 있고 그것을 배울 수 있습니다 – hugh

+1

기술적으로 \ _ \ _ init \ _ \ _은 (는) 생성자가 아닙니다. \ _ \ _ new \ _ \ _는 (는) http://stackoverflow.com/questions/6130644/what-is-the-difference-between-a-constructer-and-initializer-in-python을 참조하십시오. \ _ \ _ init \ _ \ _이 (가) 호출되면 개체가 이미 존재하지만, 필드를 초기화합니다. –

-3
 
class MyClass(SuperClass): 
    def __init__(self, *args, **kwargs): 
     super(MyClass, self).__init__(*args, **kwargs) 
     # do initialization 
+0

그가 물었던 것이 아닙니다. –

+3

종종 생성자가 부모 생성자에 전달되어서는 안되는 추가 매개 변수를 가질 수 있습니다. –

+0

//, @giolekva이 기능을 향상 시키시겠습니까? –

3

생성자

__init__(self, other parameters)로 선언? 그렇다면 [숙제]로 태그를 지정하십시오.