これは私がやりたいことです:
def f: return 1, 2
list = {
"a","b": f()
}
1 回の関数呼び出しでリストの 2 つの要素を同時に設定する方法はありますか?
>>> dict(zip(('a', 'b'), f()))
{'a': 1, 'b': 2}
の作成後に属性を設定しますdict
。
dct = {}
dct['a'], dct['b'] = f()
複数の代入は、dict リテラル表記ではなく、代入時にのみ機能します。
疑似コードから、リストではなく辞書が必要であるように見えますが、PEP-448が実現した場合 (現在 3.4 に予定されています)、リストへのアンパックは使い慣れた構文で簡単になることに注意してください。 python users - *
(解凍オペレーター):
>>> def f(): return 1, 2
>>> a_list = [*f]
>>> a_list
[1, 2]