は、私は次の3つの辞書を持っていると言う:ある辞書の値を別の辞書にマップ/割り当て/置き換える方法は?
General case:
d1 = {'c_choice1': '1.10', 'c_choice2': '1.20',...}
d2 = {'John': {'strength': 'choice1', 'agility': 'choice2',...},...}
d3 = {'John': {'choice1': 'c_choice1', 'choice2': 'c_choice2',...},...}
d2 and d3 can be:
d2 = {'John': {'strength': 'choice1', 'agility': 'choice2'}, 'Kevin': {'int': 'choice1'}}
d3 = {'John': {'choice1': 'c_choice1', 'choice2': 'c_choice2'}, 'Kevin': {'choice1': 'c_choice1'}}
or
d2 = {'John': {'strength': 'choice1', 'agility': 'choice1'}}
d3 = {'John': {'choice1': 'c_choice1'}}
私は(例として、一般的なケースを使用して)何をしたいか:
a)のD3から、choice1 = c_choice1、choice2 = c_choice2など聞かせて
choice1 = c_choice1
choice2 = c_choice2
b)は、ルックアップd1とc_choice1、c_choice2の値を見つける、など
d4 = {'John': {'strength': '1.10', 'agility': '1.20',...}...}
注:
C)
マイ所望の出力()の例のような一般的なケースを使用して、D1の値に置き換えD2に等choice1、choice2、を有する最終辞書を作成a)入力ファイルからデータを抽出するときに3つの辞書が作成されますが、キーと値は自分で定義されていないため、辞書のキーと値の順序はわかりません。
b)私はPython 2.7を使用しています。
どうすればいいですか?
ありがとうございます。しかし、私の 'd2'と' d3'がこの形式であれば 'd2 = {'John':{'strength': 'choice1'、 'agility': 'choice1'}}'、 'd3 = {'John '' {'{' choice1 ':' c_choice1 '}} 'と' {'John':{'agility': '1.10'、 'strength': '1.10'}}'のいずれかの変更が必要ですか?私はあなたのコードを使用しようとしましたが、動作しません。 –
d3は 'd3 = {'John':{'choice1': 'c_choice1'、 'choice2': 'c_choice2'}}' '' choice2'が 'd2'に見つかりません –
元の投稿から 'choice1'が' d2'の与えられたエントリーに複数回現れることがあります。私は見て、私はこれを変更できるかどうかを見ていきます。 –