2016-09-12 3 views
-1

간단한 객체 지향 탁구 게임을 만들려고합니다. 나는 Player 객체와 하나의 메소드 (create_paddle)를 가지고있다. 나는 create_paddle 방법을 Player의 인스턴스를 생성하고 호출 할 때 그것은 나에게 다음과 같은 오류를 제공합니다 :자체 속성이 작동하지 않습니다. 파이썬

Traceback (most recent call last): 
    File "C:\Users\jerem\Documents\python_programs\pong.py", line 30, in <module> 
    player1.create_paddle(30, 180, 15, 120) 
TypeError: create_paddle() missing 1 required positional argument: 'h' 

프로그램 : 나는 오류를보고하고 다른 게시물이 도움이되지

class Player: 

    def create_paddle(self, x, y, w, h): 
     pygame.draw.rect(surface, white, (x, y, w, h)) 

player1 = Player 
player1.create_paddle(30, 180, 15, 120) 

. 도움을 주시면 감사하겠습니다. 감사합니다, JC

객체 생성 할 때 괄호를 놓치고
+2

'player1 = 플레이어()' – Li357

답변

4

:

player1 = Player() 

그냥 플레이어에 재생기를 할당하고 정적 메소드처럼 메소드를 호출하려는 의미합니다 .... 그래서 자기가 당신을 위해 전달되지 않습니다.

player1.create_paddle(player1, 30, 180, 15, 120) 

그게 바로 파이썬이 당신을 위해하는 일입니다.

+0

와우! 내가 바보 같은 실수를 30 분 동안 봤어. 감사! –

+0

@ J-Carder 당신을 위해 작동하고 문제를 해결할 경우 귀하의 질문에 대한 내 대답 및 모든 stackoverflow 대답을 수락 고려해야합니다, 그래서 stackoverflow '대답이없는'페이지에서 제거 할 수 있습니다. 고맙다는 말로 ... 이미 말한 것을 고맙다. :) – danidee

관련 문제