は、この例を考えます。それからint
を取得するにはどうすればよいですか? __args__
でも__parameters__
も、Python 3.5.2では動作しません。より具体的に開梱オプションの型注釈
、私は、関数のシグネチャを検査し、引数に特定の事柄を行い、一般的なデコレータを書くことをしようとしています。そのためには、その後、T
で動作するように、注釈などOptional[T]
からクラスを取得する必要があります:私は単に実装に相談することを好むこれらのケースでは
annot = typing.Optional[T]
cls = # MAGIC?!
assert cls is T
あなたは 'annot .__ args __ [0]'(少なくとも3.6.1では)を探しているようです。どのようなPythonバージョンを使用していますか? 'typing'はまだ[暫定](https://www.python.org/dev/peps/pep-0411/)なので、まだ変更が行われている可能性があります。 –
今は3.5で作業する必要があります。 – deceze
あなたは '3.5.2'を使用しています。私は推測していますか? '3.5.1'では' __args__'の名前は '__parameters__'だと思うので、' typing'モジュールの内部APIはかなり揮発性です。) –