1

これが私のコードです:

class Board:
    def __init__ (self, boardLength, boardHeight, pieces):
        self.__boardLength = boardLength
        self.__boardHeight = boardHeight
        self.__pieces = pieces
        self.__snapShots = []
        self.__tiles = []
        while len(self.__tiles) < (self.__boardHeight*self.__boardLength):
            self.__tiles.append(0)

board1 = Board(5, 4,
    [u,I_shape(1,'I'),X_shape(3,5,'U'),T_shape(4,5,'U'),L_shape(3,5,'U')]
)

そして私はこれを手に入れます:

TypeError: __init__() takes exactly 4 arguments (3 given)

initには4つの議論があることを理解していますが、そのうちの1つは自己であり、他の3つを与えました。誰かが私に何が間違っているのか教えてもらえますか?

4

1 に答える 1

6

I_shapeあなたの他の形がすべて3つの引数を取ることを考えると、あなたの問題は実際にあると思います。私はこれを実行しましたが、存在しないクラスを。に置き換えて正常に機能しましたNone

__variableまた、 99.9%の場合、名前マングリング()を使用する必要がないことにも注意してください。プライベートであることを示す場合は、単一の下線を使用します。

于 2012-04-20T17:30:01.333 に答える