は、私がpyhtonにこの辞書を持っていると言う:どのように素早くPythonでdictのプロパティをアップレベルですか?
{'a': {'asuba':'1','asubb':'2'},'b':{'bsuba':'1','bsubb':'2'}}
私の結果の辞書がある「」ように、上位レベルの最も簡単な/最も簡単な方法ですが、キーを何と言う:続いupdate
より
{'asuba':'1','asubb':'2','b':{'bsuba':'1','bsubb':'2'}}
は、私がpyhtonにこの辞書を持っていると言う:どのように素早くPythonでdictのプロパティをアップレベルですか?
{'a': {'asuba':'1','asubb':'2'},'b':{'bsuba':'1','bsubb':'2'}}
私の結果の辞書がある「」ように、上位レベルの最も簡単な/最も簡単な方法ですが、キーを何と言う:続いupdate
より
{'asuba':'1','asubb':'2','b':{'bsuba':'1','bsubb':'2'}}
ベターdel
によって:
d.update(d.pop(k))
k
の値が0に等しいキーが含まれている場合、これは問題を回避自体(update
の場合はdel
、値のキーは親の値を上書きして、del
が発生した場合は誤って削除されます)。最初にpop
を入力すると、k
のキーと値のペアを追加する前にk
のエントリが削除されるため、競合は発生しません。
これは本当に素晴らしい解決策です。あなたがポップできるかどうかは分かりませんでした。 – mwm314
@ mwm314:Yar、 'dict.pop'と' dict.setdefault'はもっと知っておくべき2つのメソッドです。 (キーが組み込み型ではないにもかかわらず、 'setdefault'に対してはスレッドセーフではなく、論理的な操作にはやはり便利です)、原子の挿入と削除を行うのに非常に便利です。 – ShadowRanger
鍵が競合している場合はどうしますか? –
鍵の競合がないものとします。最後に取り上げられたものでオーバーライドしますか? – Rolando