[解決済み】Pythonで複数のコンストラクタを定義することはできないのでしょうか?[重複しています]。
2022-04-17 21:35:59
質問
重複の可能性があります。
Pythonで複数のコンストラクタを持つための、クリーンでPythonicな方法は何ですか?
Pythonでは、異なるシグネチャを持つ複数のコンストラクタを定義することはできないのでしょうか? もしできないのであれば、それを回避する一般的な方法は何でしょうか?
例えば、あるクラスを定義したいとします。
City
.
と言えるようにしたいですね。
someCity = City()
または
someCity = City("Berlin")
ここで、最初のものは単にデフォルトの名前値を与え、2番目のものはそれを定義するものです。
解決方法は?
Javaと異なり、コンストラクタを複数定義することはできません。 ただし、値が渡されない場合のデフォルト値を定義することは可能です。
def __init__(self, city="Berlin"):
self.city = city
関連
-
PythonによるLeNetネットワークモデルの学習と予測
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] 複数の例外を1行でキャッチする(ブロックを除く)
-
[解決済み] Pythonで静的なクラス変数は可能ですか?
-
[解決済み] なぜC++はPythonよりもstdinからの行の読み込みが遅いのですか?
-
[解決済み] Pythonでシングルトンを作成する
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonで複数のコンストラクタを持つためのクリーンでPythonicな方法は何ですか?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Evidentlyを用いたPythonデータマイニングによる機械学習モデルダッシュボードの作成
-
[解決済み】pygame.error: ビデオシステムが初期化されていない
-
[解決済み】 AttributeError: モジュール 'matplotlib' には属性 'plot' がない。
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】インポートエラー。モジュール名 urllib2 がない
-
[解決済み】SyntaxError: デフォルト以外の引数がデフォルトの引数に続く
-
[解決済み】Python: SyntaxError: キーワードは式になり得ない
-
[解決済み】「OverflowError: Python int too large to convert to C long" on windows but not mac
-
[解決済み] 引数の型に基づいて __init__ メソッドをオーバーロードするには?
-
[解決済み】Pythonで複数のコンストラクタを持つためのクリーンでPythonicな方法は何ですか?