<p>正如其他人提到的,您正在创建一个新变量<code>value</code>,而不是更新关联的字典。下面是一个实现目标的可读方法</p>
<pre><code>def stand(dic):
# For each recipe and ingredients dictionary
for recipe, ingredients in dic.items():
# For each ingredient and amount in ingredients dictionary
for ingredient, amount in ingredients.items():
# Split ingredient into separate words
for word in ingredient.split(' '):
# Check if word exists in the standardize dictionary
if word in standardize:
# If there is a match, then update the ingredient with its new amount
dic[recipe][ingredient] = float(amount) * standardize[word]
return dic
print(stand(new_dic))
</code></pre>
<p><strong>输出</strong></p>
<pre><code>{
"Conejo al ajillo": {
"hoja de laurel": "1",
"ccs de aceite": "50",
"cabeza de ajos": 150.0,
"vaso de vino": "1",
"kilos de conejo": 120.0,
"guindillas": "3"
},
"Pimientos verdes rellenos de codornices.": {
"ccs de aceite": "80",
"cucharadas de agua": "2",
"dientes de ajo": "2",
"cebolla": 75.0,
"cucharada de chocolate rallado ": "1",
"codornices": 480.0,
"cucharada de harina": "1",
"vaso de jerez seco": "1",
"pimientos verdes grandes": "6",
"gramos de sal": "5",
"gramos de tocino de jam\u00f3n": "50"
},
"Pollo a la leonesa.": {
"cucharadas de jerez": "2",
"huevo": "1",
"gramos de jamon": "50",
"gramos de trufa en lata ": "25",
"ccs de leche": "100",
"manzana reineta": "1",
"gramos de menudillos de pollo": "200",
"gramos de miga de pan ": "100",
"kilos de pollo": "1.5",
"gramos de tocino": "50",
"ccs de aceite": "50",
"gramos de manteca": "50"
},
"Pollo de corral al chilindron": {
"ccs de aceite": "150",
"dientes de ajo": "6",
"gramos de cebolla ": 30000.0,
"gramos de harina": "60",
"hoja de laurel": "1",
"pizca de pimienta": "1",
"kilos de pollo": "2",
"pizca de sal": "1",
"gramos de tomate frito": "50",
"gramos de tomates ": "300",
"ramito de tomillo": "1",
"pimientos verdes": "2"
},
"Pavo relleno de castanas": {
"cucharadas de caldo": "7",
"gramos de castanas cocidas ": "500",
"cucharada de harina": "1",
"gramos de magro de cerdo ": "250",
"gramos de manteca": "100",
"kilos de pavo tierno": "2.5",
"cucharadita de pimienta ": "1",
"pizca de sal": "1",
"pavo": "1"
},
"Conejo a la castellana.": {
"cucharadas de aceite ": "7",
"vaso de agua": "1",
"vaso de caldo": "1",
"conejo": 80.0,
"cucharada de harina ": "1",
"gramos de jamon": "50",
"gramos de manteca de cerdo ": "50",
"gramos de pan": "150",
"pizca de sal": "1",
"vasito de vino blanco": "1"
},
"Gazpacho manchego": {
"cucharadas de aceite de oliva ": "6",
"dientes de ajo": "4",
"gramos de conejo": 32000.0,
"pizca de pimenton dulce": "1",
"pizca de pimienta": "1",
"pellizco de sal": "1",
"gramos de tomate ": "30",
"torta manchega": "1"
},
"Lomo de ciervo en salsa de setas y trufa.": {
"ccs de aceite de oliva": "180",
"dientes de ajos": "6",
"gramos de cebollas pequenas": "200",
"hoja de laurel": "1",
"filetes de lomo de ciervo de unos ": "12",
"gramos cada uno ": "75",
"taza de nata liquida": "1",
"cucharadita de oregano": "1",
"cucharadas de pimenton dulce ": "2",
"pizca de sal": "1",
"gramos de setas cocidas": "200",
"cucharaditas de tomillo": "0.5",
"trufa en aguardiente": "1"
}
}
</code></pre>
<p>您可以使用<code>print(json.dumps(stand(new_dic), indent=4))</code>将输出格式化为此可读格式</p>