如何将字典集中的值相乘

时间:2020-01-16 04:13:39

标签: python-3.x

我有这个

 flower_bulbs = { 'daffodil': 0.35, 'tulip': 0.33, 'crocus': 0.25, 'hyacinth': 0.75, 'bluebell': 0.50}

 Marrys_order = {'daffodil'*50, 'tulip'*100}

 flower_bulbs['tulip'] = 0.33*1.25

如何使marrys_order的输出不是重复的水仙花50次,而是具有50个水仙花的值。

3 个答案:

答案 0 :(得分:0)

您输出的代码出现50个字符串'daffodil'出现100个字符串'tulip'

 Marrys_order = {'daffodil'*50, 'tulip'*100}

您需要通过键flower_bulbs来访问字典'daffodil'

Marrys_order = {flower_bulbs['daffodil']*50, flower_bulbs['tulip']*100}

输出:

{17.5, 33.0}

答案 1 :(得分:0)

您可以这样操作:

flower_bulbs = { 'daffodil': 0.35, 'tulip': 0.33, 'crocus': 0.25, 'hyacinth': 0.75, 'bluebell': 0.50}
Marrys_order = {flower_bulbs['daffodil']*50, flower_bulbs['tulip']*100} 

输出:

{33.0, 17.5}

答案 2 :(得分:0)

Python字典具有键值对,为了访问字典中特定键的 value ,您需要使用dictionary_name[key_name]
之所以将“水仙花”重复50次而不是预期的结果,是因为编译器将“水仙花”视为普通字符串并重复了50次(* 50)。为了使用“ daffofils”作为键并访问键的值(0.35),您需要像访问flower_bulb['daffodil']一样使用flower_bulbs['tulip']
这就是您的代码最终的外观。

Marrys_order = {flower_bulbs['daffodil']*50, flower_bulbs['tulip']*100}

产生输出

{33.0, 17.5}  
相关问题