Python クラスのインスタンス変数を効率的に追跡して取得する方法

Susan Sarandon
リリース: 2024-10-27 07:37:02
オリジナル
438 人が閲覧しました

 How to Efficiently Track and Retrieve Instance Variables in Python Classes?

変数コレクションのクラス インスタンスの追跡

特定のクラスのインスタンスのリストを維持すると、各インスタンスから特定の変数を効率的に取得できます。

クラス変数アプローチ

クラス インスタンスを追跡するための適切な方法は、クラス変数を利用することです。次の例は、このアプローチを示しています。

class Foo:
    instances = []

    def __init__(self):
        self.x = {}
        Foo.instances.append(self)
ログイン後にコピー

この手法では、クラス内に共有リスト インスタンスが作成されます。各インスタンスが作成されると、それ自体がリストに追加されます。

インスタンス変数の取得

プログラムの最後にすべてのインスタンスから x 辞書を収集するには、新しい辞書:

foo_vars = {id(instance): instance.x for instance in Foo.instances}
ログイン後にコピー

ここで、id() は各インスタンスに一意の識別子を提供し、インスタンス ID をキーとして、x 辞書を値として持つ辞書の作成を可能にします。

共有リスト

クラス変数アプローチにより、インスタンスの数に関係なく、すべてのインスタンスにわたって 1 つのリスト (インスタンス) のみが維持されることが保証されます。これにより、インスタンスごとに個別のリストを追跡する必要がなくなります。

以上がPython クラスのインスタンス変数を効率的に追跡して取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!