1分でPythonを学ぶ|オブジェクト指向(パート1)

超無敵の乾物が毎日18:00にあなたに押し出されます! ! !

オブジェクト指向のプログラミング言語では、同じ属性または機能を持つモデルがクラスを使用して定義されます。プログラムでは、現実の世界を反映できるクラスを作成し、そのクラスに基づいてオブジェクトを作成する必要があります。

Pythonは、その設計以来、オブジェクト指向の言語でした。このため、Pythonでクラスとオブジェクトを簡単に作成できます。

オブジェクト指向テクノロジーの概要

クラスの定義と基本的な使用法

クラスの構文形式は次のとおりです。

classClassName:
 ステートメント

クラス:クラスを定義するキーワード

ClassName:クラスの名前。Pythonでは、クラスの最初の文字を大文字にする必要があると規定されています。

pythonプログラムでは、クラスはインスタンス化後にのみ使用できます。クラスのインスタンス化は関数呼び出しに似ています。クラス名と括弧の形式を使用する限り、クラスをインスタンス化できます。クラスは複数のインスタンスにインスタンス化でき、インスタンスは相互に影響を与えません。

クラスを定義して使用する基本的なプロセスは次のとおりです。

classMyClass:     #MyClassを定義する
 " これはクラスです."
    
myclass =MyClass()     #クラスMyClassをインスタンス化します
print('出力クラスの説明:')    #テキスト情報を表示する
print(myclass.__doc__)    #属性値を表示
print('ヘルプ情報を表示します。')help(myclass)

上記のコードでは、クラスMyClassが最初に定義され、このクラスには「This is a class」というステートメントが1つだけあり、次にクラスがインスタンス化され、クラスの属性が呼び出されて属性「doc」の値が表示されます。 python言語のすべてのオブジェクトには、オブジェクトの機能を説明するために使用される__ doc__属性があります。

結果は次のとおりです。

出力クラスの説明:
これはクラスです.
ヘルプ情報を表示します。
Help on MyClass in module __main__ object:classMyClass(builtins.object)|これはクラスです.||  Data descriptors defined here:||  __dict__
 |  dictionary for instance variables(if defined)||  __weakref__
 |  list of weak references to the object(if defined)>>>

クラスオブジェクト

python言語では、オブジェクトはクラスのインスタンス化によって生成されます。

クラスオブジェクトは、属性参照とインスタンス化の2つの操作をサポートします。

属性参照は、Pythonのすべての属性参照と同じ標準構文** obj.name **を使用します。

クラスオブジェクトが作成された後、クラス名前名のすべての名前は有効な属性名になります。したがって、クラス定義が次のような場合:

classMyClass:"""単純なクラスインスタンス"""
 i =12345
 def f(self):return'hello world'
 
# インスタンス化されたクラス
x =MyClass()
 
# クラスのプロパティとメソッドにアクセスする
print("MyClassクラスの属性iは次のとおりです。", x.i)print("MyClassクラスのメソッドfの出力は次のとおりです。", x.f())

上記は、新しいクラスインスタンスを作成し、そのオブジェクトをローカル変数xに割り当てます。これは空のオブジェクトです。

上記のプログラムの出力は次のとおりです。

MyClassクラスの属性iは次のとおりです:12345
MyClassクラスのメソッドfの出力は次のとおりです。helloworld

このクラスには、__ init __()(** Constructor **)と呼ばれる特別なメソッドがあり、次のように、クラスがインスタンス化されると自動的に呼び出されます。

def __init__(self):
 self.data =[]

クラスは__init __()メソッドを定義し、クラスのインスタンス化操作は自動的に__init __()メソッドを呼び出します。次のようにクラスMyClassをインスタンス化します。対応する__init __()メソッドが呼び出されます。

x =MyClass()

もちろん、__ init __()メソッドはパラメーターを持つことができ、パラメーターは__init __()を介してクラスのインスタンス化操作に渡されます。例えば:

classComplex:
 def __init__(self, realpart, imagpart):
  self.r = realpart
  self.i = imagpart
x =Complex(3.0,-4.5)print(x.r, x.i)   #出力結果:3.0-4.5
私はクルスです
WeChatに参加して交換し、よりエキサイティングな記事を読むことを学ぶことを歓迎します。あなたは私をフォローすることができます!
パブリックアカウントをフォローし、「pdf」と返信してください
オリジナルのDjangoとフラスコのチュートリアルのフルセットを受け取るルーチンはありません⬇️

Recommended Posts

1分でPythonを学ぶ|オブジェクト指向(パート1)
1分でPythonを学ぶ|オブジェクト指向(中国語)
Pythonのハードコア操作を1分で学ぶ
10.オブジェクト指向のPython
Pythonでの同時リクエスト(パート2)
Pythonでのガベージコレクションについて学ぶ
Pythonのすべてがオブジェクトです
1つの画像フロー:Pythonのすべての組み込み例外
Pythonで正規表現を取得するための1つの記事
Pythonレビュー1