Python型アノテーションで '親クラスをサブクラス化するオブジェクト'をどのように参照しますか?Python 3タイプの注釈とサブクラス
例:FooBase
は、Foo1
,Foo2
などがサブクラス化された抽象基本クラスです。関数がFooBase
の子孫を受け入れるようにします。これは行います:
def do_something(self, bar:FooBase):
pass
それともこれが唯一もちろんFooBase
が抽象的であることを考えると不可能である、クラスFooBase
のオブジェクトを受け入れますか?その場合、すべてのケースのうちUnion
を構築する必要がありますか(神様、私は願っていません!)、あるいは他の方法でこの関係を抽象的に表現できますか?
あなたは[PEP 484](https://www.python.org/dev/peps/pep-0484/)を認識していますか? *定義された意味がある*。実行時に強制されないという理由だけで、あなたが書いていることが意味をなさないというわけではありません。 – poke