私は一つの値が別の値から構築された辞書を作りたいと思います。dict作成中に別のものからPython dict値を作成する方法は?
私は
d = {
'a':1,
'b':self['a']+1
}
を書いて思ったが、期待どおりに動作しませんでした:
>>> {'a':1, 'b':self['a']+1}
Traceback (most recent call last):
File "<stdin>", line 1, in ?
NameError: name 'self' is not defined
だから、どのように私はPythonのトリックを達成することができますか? (私はPython 2.4
を使用しています)
'' a ''をどのような値に設定しているかが分かっているなら、すでに '' b ''を設定する必要があります。 –
@WayneWerner:しかし、 'a'の値を作成する式は高価になる可能性があります。その計算を2回行わないでください。 –
'self'はキーワードではなく、どこにでも特別な意味を持ちません。インスタンスメソッドの最初の引数に与えられた従来の名前です。 – chepner