私はちょうどLearn Python The Hard WayによるPythonの学習をZed A. Shawに始めました。 しかし、私はinitメソッドをいつ使うべきか混乱していますか? これは必須ですか? 私はどうしますか?Python 2.7で__init__を使用しない場合と使用する場合
1
A
答えて
2
おそらく、他の誰かがより良い回答をしているかもしれませんが、これは私がそれを理解する方法です。家を建てるための青写真の隠喩はここでうまくいきます。基本的に同じように見える多くの異なる住宅の住宅開発をわずかなバリエーションで持っているとします。家を建てるには、毎回同じことをやってから、カスタマイズを追加する必要があります。
あなたのクラス宣言は青写真に似ていて、あなたのPythonプログラムに家について知る必要があるすべてを伝えます。ただし、__init__
メソッドでは、そのオブジェクトの絶対的な基本要件の指示が提供されます。
ドアを持たない家を持つことはできないのと同じように、名前、年齢などの基本的なプロパティがなくてもStudent
オブジェクトまたはPet
オブジェクトを持つことはできません。 __init__
メソッドは、ブループリントが一般の請負業者にすべての家にドアが必要であることを伝えるように、新しい生徒またはペットを作成するたびにPythonに何をする必要があるかを伝えます。
__init__
メソッドは、オブジェクトのself
変数も設定します。 self
は、クラスのの単一コピーの変数割り当てに特化することを可能にします。
希望すると便利です。
関連する問題
- 1. awsラムダ関数を使用しない場合と使用しない場合
- 2. CoreAnimationを使用しない場合と使用しない場合
- 3. sass - 使用する場合としない場合
- 4. $ thisを使用する場合とシンプルな変数を使用する場合
- 5. ハスケルでハムズを使用する場合Yesodなしの場合
- 6. 開発ツールを使用する場合と、Chromeで使用しない場合の違いは何ですか?
- 7. C++ - コピーコンストラクタでconstを使用する場合と使用しない場合の違いは何ですか?
- 8. PARTITION BY(OracleでKEEPを使用している場合と使用していない場合)
- 9. getManagerを使用する場合と使用しない場合のgetRepositoryの違いは何ですか?
- 10. Invokeを使用する場合と使用しない場合の違いは何ですか?
- 11. python copy.copyを使用する場合
- 12. 'Promise'を使用すると 'Promise'を使用しない場合:どの場合ですか?
- 13. 「new」キーワードを使用する場合と使用しない場合の違いを教えてください
- 14. AJAXを使用する場合とWebアプリケーションでAJAXを使用しない場合
- 15. MVVMを使用しない場合は?
- 16. Python 2.7を私のdjangoプロジェクトで使用する場合の問題
- 17. ラムダ式を使用する場合と使用しない場合の違いは?
- 18. Executorを使用する場合と使用しない場合のマルチスレッドの違い
- 19. デリゲートを使用する(または使用しない)場合
- 20. 目的Cコンベンション:使用する場合と使用する場合
- 21. C#の 'new'キーワードを使用する場合と使用しない場合のオブジェクトプロパティの設定
- 22. pageBaseTypeを使用する場合と使用しない場合のページ構成セクションの相違点
- 23. java inbuildメソッドを使用する場合と使用しない場合のDOBの並べ替え
- 24. チェックルータコンセントを使用している場合
- 25. NoClassDefFoundErrorを使用している場合
- 26. Railty - 使用する場合
- 27. エラーpythonでスタンフォードタガーを使用している場合
- 28. sqlite3が存在しない場合(Pythonを使用)
- 29. Python:いくつかのサブパッケージを使用している場合は、__init__.pyファイルに何を入れますか?
- 30. Pythonで適切なtry関数を使用する場合
[Python \ _ \ _ init \ _ \ _とそれらは何をするのですか?](http://stackoverflow.com/questions/625083/python-init-and-self-what-do-they -行う) –