2012-02-06 3 views
0

파이썬으로 프로그래밍하는 동안 나는 다음과 같은 모호성과 종종 혼동된다 :파이썬 함수 혼동

: function (a) 또는 a.function()이어야한다. 질문은 너무 일반적이며 누군가가 어떤 상황이 발생하면 나에게 말할 수 있습니까?

답변

0

a.function()과 같이 호출하면 "a"라는 객체에서 "function"이라는 메서드가 호출됩니다.

방법과 기능/절차의 차이를 모르면 Object Oriented Programming 개념을 공부해야합니다.

class Person 

    def speak(self, message): 
     print message 

나는 사람이 첫 번째 인수로 Person을 통과해야 생각하는 방법을 볼 수있는 정의를 보면 귀하의 혼란은 잠재적으로 파이썬은 인스턴스 메소드를 정의하는 방법에서 유래

4

....

하지만이 방법에 사용할 수있는 사람의 현재 인스턴스 self을 만드는 것은 python의 방법 일뿐입니다.

때문에 적절한 방법이 될 것

person_instance = Person() 
person_instance.speak("This is a message")