この質問は、ここでは特に Python クラスのコンテキストにありますが、より一般化することができます。4 つの変数で初期化されるクラスm
を作成しています。これをクラスのインスタンス化に割り当てます。現在、これは次のようになっています。
class mm(object):
def __init__(self, a, b, c, r):
self.a = a
self.b = b
self.c = c
self.r = r
# etc.
self
ただし、疑似コードのような 1 行で変数を割り当てられるようにしたいと考えています。
def __init__(self, a, b, c, r):
self.varname = var for var in [a, b, c, r]
これを任意の数の変数に一般化できれば、次のような結果が得られるとさらに良いでしょう。
def __init__(self, **kwargs):
assign(self, varname, value) for varname, value in kwargs.iteritems()
ただし、私の知る限り、そのようなステートメントをループすることは実際には不可能です。これを行う方法を知っている人はいますか?