Python のコンストラクターのオーバーロードとは何ですか? 例を挙げて
公開: 2023-01-29Python は、初心者でも簡単に習得できる、使いやすいプログラミング言語です。 このプログラミング言語は、プログラマーがコードを実装するいくつかの方法を検討するのに役立つ幅広いコミュニティ サポートを提供します。 Python の標準ライブラリとコミュニティ フォーラムによって提供されたモジュールは、Web およびインターネット開発、デスクトップ GUI、データベース アクセス、教育、科学および数値アプリケーション、ネットワーク プログラミング、ソフトウェア開発、ゲーム開発プログラムなど、無限の可能性を可能にしました。 このオープンソース言語は、OSI 承認ライセンスの下で開発されています。 したがって、無料で使用および配布することができます。 Python Software Foundation は、Python のライセンスを管理しています。
目次
Python のコンストラクタ:
Python コンストラクターの主な機能は、オブジェクトをインスタンス化することです。 オブジェクトの作成時に、クラス データ メンバーに値が割り当てられるか、コンストラクターを使用して初期化されます。 関数 _init_ は Python のコンストラクターです。 多くの場合、新しいオブジェクトが作成されるときに呼び出されます。
コンストラクターの宣言の構文は次のとおりです。
定義 _init_(self):
# コンストラクタ本体
Python には 2 種類のコンストラクターがあります。 彼らです:
- デフォルトのコンストラクタ
- パラメータ化されたコンストラクタ
デフォルトのコンストラクタ:
これは単純なコンストラクターであり、入力パラメーターを受け入れません。 デフォルト コンストラクターの定義には、構築中のインスタンスを参照する引数が 1 つだけあります。
パラメータ化されたコンストラクタ:
名前が示すように、これらのコンストラクターにはパラメーターがあります。 このタイプのコンストラクターの最初の引数は、構築されるインスタンスを参照し、それは「自己」として知られています。 他のすべての必須引数は、プログラマによって入力として指定されます。
upGrad のデータ サイエンス コースをチェックしてください
Python でのコンストラクターのオーバーロード:
コンストラクトのオーバーロードとは、各コンストラクターがプログラム内のさまざまなタスクを実行するために使用されるように、パラメーターの個別のリストを使用してより多くのコンストラクターを組み込むシナリオを指します。 たとえば、Vector クラスには 4 種類のコンストラクターがあります。
Python は、複数のコンストラクターを明示的にサポートしていません。 ただし、Python で複数のコンストラクターを使用するには、いくつかの方法があります。 プログラマーが同じクラスに対して複数の _init_ メソッドを作成すると、最後に作成された _init_ 関数が他のすべてのコンストラクターを上書きします。
Pythonで複数のコンストラクターが必要なのはなぜですか?
ユーザーがクラスをインスタンス化するためにさまざまなアクションを実行する必要がある場合、複数のコンストラクターが必要になります。 これは、異なるパラメーターでクラスによって異なるアクションが実行される場合に役立ちます。 Python のクラス コンストラクターは、以下に示す 3 つの異なる方法でポリモーフィズムを示すように構造化されています。
- 引数に基づくコンストラクターのオーバーロード
- _init_ メソッドの呼び出し
- @classmethod デコレーターの使用
人気のデータ サイエンス コースを探す
IIITBのデータサイエンスのエグゼクティブポスト大学院プログラム | ビジネス上の意思決定のためのデータ サイエンスのプロフェッショナル認定プログラム | アリゾナ大学でデータ サイエンスの理学修士号を取得 |
IIITB のデータ サイエンスの高度な証明書プログラム | メリーランド大学のデータ サイエンスとビジネス分析のプロフェッショナル認定プログラム | データサイエンスコース |
人気のデータ サイエンス記事を読む
データ サイエンスのキャリア パス: 包括的なキャリア ガイド | データ サイエンスのキャリア成長: 仕事の未来はここにあります | データ サイエンスが重要な理由データ サイエンスがビジネスに価値をもたらす 8 つの方法 |
マネージャーにとってのデータサイエンスの関連性 | すべてのデータ サイエンティストが持つべき究極のデータ サイエンス チート シート | データ サイエンティストになるべき 6 つの理由 |
データ サイエンティストの 1 日: 彼らは何をしているのか? | 神話の崩壊: データ サイエンスにコーディングは必要ない | ビジネス インテリジェンスとデータ サイエンスの違い: 違いは何ですか? |
引数に基づく Python でのコンストラクターのオーバーロード:
このメソッドでは、渡された引数の条件がチェックされた後、必要なアクションを実行することにより、コンストラクターがオーバーロードされます。 パラメータを Sample クラスに渡す例を考えてみましょう。
- 入力パラメーターが int の場合、数値の 2 乗が答えになります。
- パラメータの長さが 1 より大きい場合、引数の合計が答えとして表示されます。
_init_ を使用したメソッドの呼び出し:
クラスのインスタンスが作成されると、そのクラスは、割り当てられたタスクを実行できる単一の _init_ コンストラクターを持つことができます。 このコンストラクターは、渡されたパラメーターに基づいて、さまざまな機能を処理し、さまざまなタスクを実行するように変更できます。 次の計算が実行される例を考えてみましょう。
- 2 つの引数が渡された場合、式は x = a 2 – b 2として評価されます。
- 3 つの引数が渡される場合、評価される式は y = a 2 + b 2 – c です。
- 渡された引数の数が 3 つを超える場合は、それらの数値の 2 乗を加算し、その合計を最大値の引数で割ります。
Python でのメソッドのオーバーライドについて詳しく学びたい場合は、18 か月の Master of Science in Data Scienceを受講することをお勧めします。 upGrad は、IIIT バンガロールとリバプール ジョン ムーア大学からこのコースを提供しています。 このコースでは、統計、Python を使用した予測分析、機械学習、データ視覚化、ビッグデータ分析などのスキルを習得できます。 Python の概念に関する深い知識を持つ学生は、ディープ ラーニング、自然言語処理、ビジネス分析、データ エンジニアリングなどの科目に取り組むのに適した立場にあります。