-1

私はpythonとpygameを使用して進化実験を行っていますが、それは重要ではありません。機能していない機能の1つであり、あなたが見てみたいと思います。

表示されるエラー メッセージは、float オブジェクトは呼び出し可能ではありません。問題は、51行目から関数を呼び出している205行目にあると言われています。

この問題の修正にはほとんど関係のないすべてのコードを投稿します。しかし、皆さんがコード全体のアイデアを持っていることは有益だと思います。コメントがないことで私を嫌わないでください:Pそれはそこに着きます!!

ありがとう

コードへのリンク: http://pastebin.com/BBm7Ehax

4

2 に答える 2

6

51 行目:

def distance(self,listx,listy):

55 行目:

self.distance=(((self.x-self.tcentrex)**2) + ((self.y-self.tcentrey)**2))**0.5

self.distanceメソッドと変数の両方になっていて、物事が適切に機能することを期待することはできません。

行 55 が実行されると (メソッドが初めて呼び出されるときに)、メソッド ( で呼び出されるメソッドであるため、 であった) が値distance()で上書きされます。self.distancedistanceselffloat

于 2012-09-16T06:48:59.947 に答える
0

55行目で、distanceメソッド内で、float値をに割り当てますself.distance。したがって、distance一度呼び出すと、distanceそのオブジェクトの属性はfloatを参照しますが、これは呼び出すことができません。

于 2012-09-16T06:52:02.730 に答える