この記事では、シンプルでありながらプログラミングの中核となる興味深いトピックを紹介します。 コンストラクター。この記事では、次のポイントについて説明します。
- Pythonコンストラクター
- Pythonのコンストラクターとは何ですか?
- Pythonでコンストラクターを作成する
- パラメータ化されたコンストラクタとパラメータ化されていないコンストラクタの違い
- Pythonで構築されたクラス関数
- 組み込みクラス属性
それでは始めましょう、
Pythonコンストラクター
しばらくプログラミングをしているとしたら、Pythonという名前に何度も出くわしたことでしょう。プログラミング言語としてのPythonはオブジェクト指向に従います。つまり、プラットフォーム上で作成されるすべてのインスタンスがオブジェクトとして定義されます。 Pythonのほとんどのコンポーネントにはオンラインで大量の情報がありますが、何度も何度も研究され続けるトピックの1つは、Pythonのコンストラクターのトピックです。したがって、この記事では、Pythonのコンストラクター、それらを使用する方法、およびコンストラクターがテーブルにもたらす利点についてすべて説明します。さぁ、始めよう!
Pythonのコンストラクターとは何ですか?
コンストラクターは、クラス内のさまざまなメンバーのインスタンスを初期化するために使用できる特別なタイプのメソッドまたは関数として簡単に定義できます。
Pythonには、2つの異なるタイプのコンストラクターがあります。
- パラメーター化されていないコンストラクター:パラメーターが存在しないPythonのコンストラクターは、パラメーター化されていないコンストラクターと呼ばれます。
- パラメーター化されたコンストラクター:パラメーターが事前に定義されているコンストラクターは、パラメーター化されたコンストラクターと呼ばれます。
コンストラクターは、クラス内にオブジェクトを作成する瞬間に定義されます。コンストラクターの存在は、十分なリソースが存在することも確認するため、スタートアップタスクはクラスのオブジェクトを介して簡単に実行できます。
Pythonコンストラクターに関するこの記事に進むと、
Pythonでコンストラクターを作成する
Pythonでのコンストラクターの定義とタイプについて理解したところで、Pythonでコンストラクターを作成する方法を見ていきましょう。
Pythonでは、構造を作成する必要がある場合は、__ init__関数またはメソッドを使用する必要があります。クラスがインスタンス化された瞬間に、このメソッドを呼び出す必要があります。 __init__関数が定義されて呼び出されると、必要に応じて、クラスオブジェクトの作成時に任意の数の引数を渡すことができます。 Pythonでのコンストラクターの最も一般的な使用法は、クラスの属性を初期化することです。
注意:
初心者向けのSASプログラミングチュートリアル
Pythonで作成するすべてのクラスは、デフォルトのコンストラクターであっても、機能するためにコンストラクターが存在する必要があります。
この概念をよりよく理解するために、以下の例を見てください。
class Employee:def __init __(self、name、id):self.id = id self.name = name def display(self):print( 'ID:%d nName:%s'%(self.id、self.name ))emp1 = Employee( 'John'、101)emp2 = Employee( 'David'、102)#従業員1の情報を印刷するためのdisplay()メソッドへのアクセスemp1.display()#従業員2の情報を印刷するためのdisplay()メソッドへのアクセスemp2 。表示()
上記のプログラムを実行すると、出力は次のようになります。
Javaで動的配列を宣言する方法
ID:101
名前:ジョン
ID:102
名前:デビッド
Pythonコンストラクターに関するこの記事に進むと、
パラメータ化されたコンストラクタとパラメータ化されていないコンストラクタの違い
上記の定義で述べたように、パラメーター化されたコンストラクターは事前定義された値を持つコンストラクターであり、パラメーター化されていないコンストラクターは値が割り当てられていないコンストラクターです。ユースケースのプログラミングはコンテキストによって異なりますが、これをよりよく理解するには、以下の例をご覧ください。
class Student:#Constructor-パラメーター化されていないdef __init __(self):print( 'これはパラメーター化されていないコンストラクター')def show(self、name):print( 'Hello'、name)student = Student()student.show( 'ジョン ')
上記はパラメーター化されていないコンストラクターの例であり、その出力は次のようになります。
これはパラメーター化されていないコンストラクターです
こんにちはジョンさん
class Student:#Constructor-パラメーター化されたdef __init __(self、name):print( 'これはパラメーター化されたコンストラクター')self.name = name def show(self):print( 'Hello'、self.name)student = Student( ' John ')student.show()
上記はパラメーター化コンストラクターの例であり、その出力は次のようになります。
これはパラメーター化されたコンストラクターです
こんにちはジョンさん
Pythonコンストラクターに関するこの記事に進むと、
Pythonで構築されたクラス関数
Pythonのコンストラクターの基本が明確になったので、Pythonに存在するさまざまな組み込みクラスを調べてみましょう。
c ++配列を昇順でソート
- getattr(obj、name、default):これはPythonの組み込み関数で、クラスの属性にアクセスするために使用されます。
- delattr(obj、name):クラス内の特定の属性を削除する必要がある場合は、この組み込み関数を利用してください。
- setattr(obj、name、value):特定の状況で、特定の値を特定の属性に設定する場合は、Pythonに組み込まれているこの関数を使用してください。
- hasattr(obj、name):最後になりましたが、特定のオブジェクトに属性が含まれているかどうかを確認する必要がある場合は、この関数を使用してください。実行時に、属性が関数に存在する場合、これはtrueを返します。
Pythonの組み込みクラス関数の概念を理解するには、以下のコードを参照してください。
class Student:def __init __(self、name、id、age):self.name = name self.id = id self.age = age#クラスのオブジェクトを作成しますStudent s = Student( 'John'、101,22) #オブジェクトの属性名を出力しますs print(getattr(s、 'name'))#属性ageの値を23にリセットしますsetattr(s、 'age'、23)#ageの変更された値を出力しますprint(getattr( s、 'age'))#学生にidという名前の属性が含まれている場合はtrueを出力しますprint(hasattr(s、 'id'))#属性age delattr(s、 'age')を削除します#これによりエラーが発生します属性ageが削除されましたprint(s.age)
上記の出力はになります。
ジョン
2. 3
本当
AttributeError:「Student」オブジェクトには属性「age」がありません
Pythonコンストラクターに関するこの記事に進むと、
組み込みクラス属性
組み込みのクラス関数に加えて、Pythonには組み込みのクラス属性が付属しており、これは時々便利です。最も重要な組み込みクラス属性のいくつかを以下に示します。
- __dict__:これを使用すると、クラスの名前空間に関する情報を含む辞書を表示できます。
- __name__:現在のクラスの名前を表示する必要がある場合は、この属性を使用します。
- __doc__:この属性には、現在のクラスのドキュメントを含む文字列が含まれています。
- __module__:クラスが定義されているモジュールにアクセスする必要がある場合は、この組み込み属性を利用してください。
- __bases__:すべての基本クラスを含むタプルを表示する必要がある場合は、この関数を使用します。
すべての組み込みクラス属性を明確にする例を以下に示します。
クラスStudent:def __init __(self、name、id、age):self.name = name self.id = id self.age = age def display_details(self):print( 'Name:%s、ID:%d、age :%d '%(self.name、self.id))s = Student(' John '、101,22)print(s .__ doc __)print(s .__ dict __)print(s .__ module__)
これで、Pythonコンストラクターに関するこの記事は終わりです。
Pythonとそのさまざまなアプリケーションに関する深い知識を得るには、次のことができます。 24時間年中無休のサポートと生涯アクセスを備えたライブオンライントレーニング用。
質問がありますか? 「Pythonチュートリアル」のコメントセクションでそれらに言及してください。折り返しご連絡いたします。