Pythonでクラスを使う方法

爱喝马黛茶的安东尼
リリース: 2019-06-20 17:25:22
オリジナル
26559 人が閲覧しました

Python プログラミングにおけるクラスの概念は、特定の種類のコレクションの記述にたとえることができます。たとえば、「人間」を 1 つのクラスと見なすことができ、その人間クラスを使用して特定の各個人を定義します。あなた、私、彼などを対象とします。クラスにも属性と機能があります。属性はクラス自体の特性です。たとえば、人間には名前、身長、体重などの属性があり、具体的な値は人によって異なります。機能は動作です。人間には食べる、歩く、寝るといった機能があるなど、クラスが達成できること。

Pythonでクラスを使う方法

#具体的な形式は次のとおりです。

# 例: クラス

class 人間の概念: ## #name = 'named'#member variable
def speak(content):#member function
メンバー変数by A が語る
>>> みなさんこんにちは! #Output


サンプル プログラム 1 (クラス定義):

>>> class pp:
...     pass
...
>>> p = pp()
>>> print p
<__main__.pp instance at 0x00CA77B0>
>>>
ログイン後にコピー

この変数の型を出力します。これは、__main__ モジュール内に Person クラスのインスタンスがすでに存在していることを示しています。

関連する推奨事項: 「Python ビデオ チュートリアル

サンプル プログラム 2 (__init__ の使用法):

説明: __init_ _ メソッドは、クラスのオブジェクトが作成されるとすぐに実行されます。このメソッドはオブジェクトを初期化するために使用されます。

>>> class Person:
...     def __init__(self, name):
...             self.name = name
...     def sayHi(self):
...             print &#39;Hello, my name is&#39;, self.name
...
>>> p = Person(&#39;Swaroop&#39;)
>>> p.sayHi()
Hello, my name is Swaroop
>>>
ログイン後にコピー

サンプル プログラム 3 (__del__ メソッド):

説明: __del__ メソッドは、プログラムの終了時に呼び出されます。

>>> class Person:
...     population = 0
...     def __init__(self, name):
...             self.name = name
...             print &#39;(Initializing %s)&#39; % self.name
...     def __del__(self):
...             print &#39;%s says bye.&#39; % self.name
...             Person.population -= 1
...
...     def howMany(self):
...             if Person.population == 1:
...                     print &#39;I am the only person here.&#39;
...             else:
...                     print &#39;We have %d persons here.&#39; % Person.population
...
>>> A = Person(&#39;aa&#39;)
(Initializing aa)
>>> A.howMany()
We have 0 persons here.
>>> B = Person(&#39;bb&#39;)
(Initializing bb)
>>> B.howMany()
We have 0 persons here.
>>> ^Z
aa says bye.
bb says bye.
ログイン後にコピー

Python でクラスを定義して使用する形式は次のとおりです: class クラス名 [(親クラス名)]:[メンバー関数とメンバー変数]、クラス名はこのクラスの名前です。名前はオプションですが、親クラス名を定義すると、サブクラスは親クラスの対応する属性とメソッドを持つようになります。クラスをオブジェクトとして定義すると、最初に __init__ コンストラクターが呼び出され、オブジェクトの属性が初期化されます。クラスの各属性 (メンバー変数) はコンストラクター内で定義できます。定義時にオブジェクト ポインターを追加するだけです。オブジェクトが破棄されると、__del__ デストラクターが呼び出されます。クラスのメンバー関数を定義するときは、クラス自体によって定義されたオブジェクトを表す変数 (C の this ポインターと同様) をデフォルトにする必要があります。この名前変数は自分で定義できます。次の例では、self 変数を使用してクラス オブジェクト変数を表します。

# 例: クラスの定義と使用法


class CAnimal: 
   name = &#39;unname&#39; # 成员变量 
def __init__(self,voice=&#39;hello&#39;): # 重载构造函数 
   self.voice = voice # 创建成员变量并赋初始值 
def __del__(self): # 重载析构函数 
       pass # 空操作 
def Say(self): 
   print self.voice 
t = CAnimal() # 定义动物对象t 
t.Say() # t说话 
>> hello # 输出 
dog = CAnimal(&#39;wow&#39;) # 定义动物对象dog 
dog.Say() # dog说话 
>> wow # 输出
ログイン後にコピー

Python プログラミングでは、クラスはクラス クラス名 (親クラス (親クラス) である場合、サブクラスは親クラスのすべてのメソッドと属性を継承でき、親クラスのメンバー関数と属性をオーバーロードすることもできます。サブクラスのメンバー関数が親クラスをオーバーライドする場合 (つまり、 、名前は同じです)、サブクラスが使用されます メンバー関数


# 例: クラス継承


class CAnimal: 
        def __init__(self,voice=&#39;hello&#39;): # voice初始化默认为hello 
              self.voice = voice 
        def Say(self): 
            print self.voice 
  def Run(self): 
            pass # 空操作语句(不做任何操作) 
class CDog(CAnimal): # 继承类CAnimal 
    def SetVoice(self,voice): # 子类增加函数
          SetVoice self.voice = voice 
       def Run(self,voice): # 子类重载函数Run
ログイン後にコピー

以上がPythonでクラスを使う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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