定義する基盤を提供します。モジュールも参照してください。派生した具象クラスがいくつかあります。このクラスから、さらに派生させることもできます。あって、あるクラスやインスタンスが特定のインタフェースを提供しているかどうか、たとえば、ハッシュ可能なのかやマッピングなのか、をテストできます。メタクラスとするヘルパークラスです。継承するだけで抽象基底クラスを作成できます。継承するときは、メタクラスの衝突を引き起こし得る多重継承のような、メタクラスを使う上でのいつもの用心が求められることに注意してください。利用することで、抽象基底クラスを直接定義することもできます。抽象基底クラス(ABC)を定義するためのメタクラス。作るときにこのメタクラスを使います。直接的にサブクラス化することができ、ミックスイン(mix-in)クラスのように振る舞います。通してだけでなく)呼び出し可能になるわけでもありません。クラスデコレータとして使うことができるように、登録されたサブクラスを返します。関数を使うことができます。次のメソッドを抽象基底クラスの中でオーバーライドできます:__subclasshook__(subclass)¶(クラスメソッドとして定義しなければなりません。サブクラスと見なせるかどうかチェックします。振る舞いをさらにカスタマイズできます。メソッドから呼び出されます。返さなければなりません。サブクラスと見なされます。サブクラスではないと見なされます。場合、サブクラスチェックは通常のメカニズムに戻ります。抽象メソッドとして定義します。ここで与えられている抽象クラスの実装は、サブクラスから呼び出すことができます。抽象基底クラスの一部ですが、抽象的でない派生クラスはこれをオーバーライドする必要はありません。見なされるということです。用いたイテレータプロトコルを使っています。手に入るわけではないことに注意してください。それは別に提供されています。抽象メソッドを示すデコレータです。それを継承したものである必要があります。派生クラスをメタクラスに持つクラスは、全ての抽象メソッドとプロパティをオーバーロードしない限りインスタンス化することができません。呼び出し方法で呼ぶことができます。プロパティやデスクリプタのために抽象メソッドを定義することもできます。クラスに動的に抽象メソッドを追加する、あるいはメソッドやクラスが作られた後から抽象的かどうかの状態を変更しようと試みることは、サポートされません。使って自身が抽象であることを示さなければなりません。抽象メソッドと違い、これらの抽象メソッドは実装を持ち得ます。メカニズムを通してそれをオーバーライドしたクラスから呼び出すことができます。呼び出しの終点として有効です。一緒に使えるようになったため、このデコレータは冗長になりました。サブクラスで、抽象クラスメソッドであることを示します。一緒に使えるようになったため、このデコレータは冗長になりました。サブクラスで、抽象静的メソッドであることを示します。一緒に使えるようになったため、このデコレータは冗長になりました。サブクラスで、抽象プロパティであることを示します。...この例は読み出し専用のプロパティを定義しています。現在の抽象基底クラスのキャッシュトークンを返します。不透明なオブジェクトです。呼び出しごとに、トークンは変更されます。ものと同じではないということを銘記すべきです。使って作成されました。