Python でクラスメソッドを使用する場合

(*-*)浩
リリース: 2019-07-09 10:15:21
オリジナル
5466 人が閲覧しました

Python では、クラス メソッドはデコレータ @classmethod を使用して定義されます。

Python でクラスメソッドを使用する場合

例を直接見てみましょう。 (推奨学習: Python ビデオ チュートリアル )

class Kls(object):
    num_inst = 0

    def __init__(self):
        Kls.num_inst = Kls.num_inst + 1

    @classmethod
    def get_no_of_instance(cls):
        return cls.num_inst


ik1 = Kls()
ik2 = Kls()

print ik1.get_no_of_instance()
print Kls.get_no_of_instance()
ログイン後にコピー

クラス メソッドは、Java が複数のコンストラクターを定義する状況をシミュレートするために使用されます。

Python クラスには初期化メソッドが 1 つしか存在できないため、さまざまな状況に応じてクラスを初期化することはできません。

coding:utf-8
class Book(object):
def __init__(self, title):
self.title = title
   @classmethod
def class_method_create(cls, title):
book = cls(title=title)
return book
   @staticmethod
def static_method_create(title):
book= Book(title)
return book
book1 = Book("use instance_method_create book instance")
book2 = Book.class_method_create("use class_method_create book instance")
book3 = Book.static_method_create("use static_method_create book instance")
print(book1.title)
print(book2.title)
print(book3.title)
ログイン後にコピー

Python 関連の技術記事の詳細については、Python チュートリアル 列にアクセスして学習してください。

以上がPython でクラスメソッドを使用する場合の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート