-2

クラスレス関数内に次のコードがあります。

        while room.getNumCleanedTiles() < min_coverage * room.getNumTiles():
            for index in range(0, len(roboList)):
                room.cleanTileAtPosition(positionList[index])
                roboList[index].updatePositionAndClean()
                positionList[index] = roboList[index].getRobotPosition
                count += 1
  • positionListクラスの位置のリストですPosition
  • このpositionクラスには と の 2 つのメソッドがgetXありgetYます。
  • room変数は class の部屋でRectangular Room、 として知られるメソッドを持っています。このメソッドcleanTileAtPositionは引数として位置を取り、メソッドgetX()getY()メソッドを使用していくつかの操作を行います。

コードは大きすぎて、ここに全体を適切に添付することはできませんが、問題は、私が説明したメソッドとクラスに限定されているようです。次のようなエラーが表示されます。

"AttributeError: 'function' object has no attribute 'getX.'" 

positionList[index]ただし、print ステートメントによって、それが実際にクラスの位置であることは明らかPositionです。それroomRectangularRoom; およびそれgetX()getY()は独立して呼び出されたときにその位置で動作しcleanTileAtPositionます。

このコードについて、私が得ているエラーが発生するように見えるものはありますか?

4

1 に答える 1

4

()getRobotPosition の後に追加します。

于 2012-09-27T21:02:43.337 に答える