私は3D座標(x、y、z)を表す "Point"という名前のクラスを構築しようとしています。私はこのポイントに値を割り当てることはできません、関数呼び出しにどのように値を割り当てることができますか?
p = Point()
print p(1 ,1, 1) # output : False`
をしかし:
class Point(object):
def __init__(self):
a = 3
self.data = [[[bool(False) for x in xrange(a)] for y in xrange(a)] for z in xrange(a)]
def __call__(self, x, y, z):
return 'call :'+self.data[x][y][z]'
私は簡単にポイントにアクセスすることができます!
p(1, 1, 0) = True # SyntaxError: can't assign to function call
これはがそれを評価するをしようとするPythonがさえ気にしないことを意味SyntaxError
であることを
SyntaxError: can't assign to function call
注:あなたがいることを書いた場合
:
は、今では次のように動作しますか? Pythonで呼び出しに割り当てることはできません。 –
また、文字列とboolの '' call: '+ self.data [x] [y] [z] 'を連結することはできません。 – RaminNietzsche
'ポイント 'は本当に**キューブです**:3 x 3 x 3立方体。 –