コンストラクタ8.1節Pythonクラスの__init _深さ分析:構文解釈

クリエイティブコモンズライセンス 著作権:帰属、紙ベースを作成するために他人を許可し、(同じライセンスで元のライセンス契約に基づいて用紙配布する必要がありますクリエイティブコモンズ

I.はじめに
オブジェクト指向のデザイン言語、コンストラクタを持って、同じクラスのすべてのクラス名ではなく、特殊なコンストラクタクラスのPythonで多くの言語にするとき、コンストラクタ名インスタンス化され、特別な方法が__init__しなければなりません。

第二に、文法の解釈
1.構文:__のinit __(自己、* argsを、** kwargsからは)
れている:
1)自己のPythonによって自動的に渡さ例として作成しました。
:あなたが注意を払うものを教えてください
あなたはこのブログについて知る必要がある場合は、を参照してください、ここでは詳細に説明されていない自己約1>「7.5節UNCOVERのPythonクラスの自己ベール。」ここで、自己自身の例を示して、それはここで見ることができ、コンストラクタが呼び出され、インスタンスが既に存在している;
2)引数のインスタンスが関数呼び出しのタプル本体にタプルにパッケージ渡さ非キーワードパラメータ、作成される
。3)kwargsからのフォーム辞書に入ってくるキーワードパラメータのインスタンスを作成し、キーワードがキーワードの重要なパラメータであり、引数の値に対応する辞書の要素が重要なパラメータです。

2.構文解釈:
1)は、パラメータの__init__(セルフ、引数*、** kwargsから)実施例以下の実施例で定義された構文に対応するパラメータを用いて定義される:
例=クラス名(*引数、** kwargsから)が
あります。
a)は、自己のパラメータは、等号の左側のインスタンス自体、または「インスタンス」を表しており、通常は存在しないコンストラクタインスタンスを呼び出す前に、何の自己、なぜ引数あなたは自己それを使用することができますがありませんか?これはPythonによって自動的に処理され、コンストラクタを呼び出す前に、Pythonはメソッドがインスタンスを作成しますので、あなたは、コンストラクタはPythonのインスタンスを作成してきた電話の際、特定の__new__方法については、この章の次のセクションを参照してください__new__呼び出します。この意味で、__ new__実際のコンストラクタメソッドは、__ init__方法は、これに基づいて特定のインスタンスを処理することである。
B)2つのパラメータ引数の後ろに、2種類のパラメータの例としては、完全な定義をコピーするkwargsから、それは渡されたパラメータの定義は、__init__メソッドは、パラメータの定義、および最初の引数として自己に実施例に基づいて、「自己」のパラメータを増加させることであるものの例を表します。
C)引数は、二つのパラメータよりkwargsからは、インスタンスを作成し、引数によって、非キーワードパラメータを引数、パラメータはキーワードkwargsからである2つのパラメータであるすべての重要なパラメータ及び引数ルーチン引数を送信する送信kwargsからであり、それは、ゼロ以上の実パラメータかもしれません。* argsを、** kwargsからパラメータ渡しモードのこの形式は、コンテンツ、このブログ「収集セクション5.2 Pythonの関数のパラメータ」を参照してください、「コレクション・パラメータ」の詳細と呼ばれる;
2)コンストラクタは任意の戻り値を持つことはできません、そうでない場合私は文句を言うでしょう。
メソッドが呼び出されたときにカスタムクラスは、このメソッドをオーバーライドしない場合は、構文上のメソッドの構文を__init__書き換える場合に観察されなければならないカスタムクラスである3)、Pythonは自動的にインスタンスを作成し、__のinit __()メソッドは、任意であり、その後、 Pythonはデフォルトの__init__メソッドを与えられます。設定方法にインスタンスが作成された後に行われるので、定義は、コンストラクタを割り当てることによって定義することができるインスタンス変数のインスタンスを初期化する必要があります。

このセクションでは、我々はよく理解している、コンストラクタ__init__ Pythonの構文およびパラメータの説明を示し、方法の観点から、より重要なのは、後者の二つは、導入を促進します。
Pythonプログラマとは接触を助けていない古い猿の学習Pythonの学習経験の漸進的な導入のための要約記事の旧猿のPython(https://blog.csdn.net/LaoYuanPython)シリーズは、簡単にはPythonを入力することができます世界。
批判を歓迎し、あなたの注意をありがとう!

おすすめ

転載: blog.csdn.net/LaoYuanPython/article/details/93512093