-1
以下のコードは、私が作成したJavaクライアントからコマンドを受け取るSimpleXMLRPCServerの一部として使用されています。 Javaクライアントはこの実行関数を呼び出し、CameraAssemblerクラスから関数名を渡します。私はexecuteメソッドでgetattrにAttributeErrorを取得するのはなぜですか?
from nsCamera.CameraAssembler import CameraAssembler
class MyFunctions:
ca = None
def initialize(self):
# Create Camera object
self.ca = CameraAssembler(commname=COMM, boardname=BOARD, sensorname=SENSOR, verbose=True)
return True
def execute(self, code):
func = getattr(self.ca,code)
output = func()
return output
myfuncs = MyFunctions()
myfuncs.initialize()
output = myfuncs.execute('arm()')
print(output)
出力:
'execute()'は 'output = func()'で関数自体を呼び出します。 'func()'が別の関数を返さない限り、 'execute()'の結果を呼び出すべきではないと思います。 – Barmar
代わりにインスタンス属性として、私はそれが代わりにエラーがあったかどうかを見てみたので、私は両方のpythonを試してみることができます。私は投稿を編集します – TravisChambers
@Barmarは正しいです - 私は単に出力= myfuncs.execute( 'アーム')を呼び出す場合、私は良いです。フォローアップとして – TravisChambers