変数と方法でPythonオブジェクトのプロパティ/メソッドにアクセスできますか?変数でドット表記のオブジェクトプロパティを指定する
例:私は変数に事前方法を捕捉した後、ドット表記でそれを使用して、「GET」部分を交換したい
handler.request.GET.add()
。
method = handler.method
handler.request.{method}.add()
私はちょうどそれを行う方法がわかりません。
変数と方法でPythonオブジェクトのプロパティ/メソッドにアクセスできますか?変数でドット表記のオブジェクトプロパティを指定する
例:私は変数に事前方法を捕捉した後、ドット表記でそれを使用して、「GET」部分を交換したい
handler.request.GET.add()
。
method = handler.method
handler.request.{method}.add()
私はちょうどそれを行う方法がわかりません。
を行うような何かを行うことができます。
だから、あなたはあなたがこれを必要だと思うときには、その多くの場合(常にではないが、多くの場合)は注目に値します
method = "GET"
getattr(handler.request, method).add()
Typo: 'getattr(handler.request、method).add()'にする必要があります。 – zeantsoi
動的属性にアクセスするためにgetattr()
functionを使用します。
method = 'GET'
getattr(handler.request, method).add()
handler.request.GET.add()
とまったく同じことをするだろう。
getattr(handler.request, 'GET')
がhandler.request.GET
と同じです:
あなたは
getattr(handler.request, "GET").add()
getattrは、それからちょうどあなたがgetattr
を探している
method = "GET" # or "POST"
getattr(handler.request, method).add()
を行うことができ、何を_really_欲しいのは関数やメソッドに 'dict'マッピング名です。 (これは他の多くの言語よりもPythonで簡単なので、それはずっと頻繁に適切です。) – abarnert