-3

コンストラクタが何であるかを理解できます。しかし、なぜ python は c++ のようなイニシャライザ リストを使用できないのでしょうか?

class test:
     def __init__(self, arg1, arg2, arg3):
         self.arg1 = arg1
         self.arg2 = arg2
         self.arg3 = arg3

これらの引数は、それほど手動でなくてもどのように設定されるのでしょうか?

ありがとう。

4

4 に答える 4

1
test1 = test(1, 2, 3)

コンストラクターは古い関数と同じで、引数を渡します。

于 2013-02-12T09:34:23.980 に答える
0

この背後にある意図は、コンストラクターに渡されるいくつかの変数を直接初期化することです。コンストラクターは、前に何度か書いたように、次のように呼ばれます。

t = test(arg1, arg2, arg3)

次に、渡されたパラメーターに対して、クラスで値を定義しました。

于 2013-09-09T15:42:47.993 に答える
0

コンストラクターは、呼び出された後ではなく、オブジェクトが作成された後に呼び出されます。

t = test (arg1, arg2, arg3)
于 2013-02-12T09:35:42.937 に答える
0

シンプル - 後でクラスをインスタンス化するとき:

a = test(arg1, arg2, arg3)

a初期化時に 3 つの引数が設定されたテスト クラスになりました。

于 2013-02-12T09:35:50.310 に答える