Python 词典中的百分比?

Python 词典中的百分比?,python,python-2.7,dictionary,Python,Python 2.7,Dictionary,巧克力和牛奶是试验中的条件,'yes'或'no'是每个试验的反应 我想计算乳白色状态(2/5*100)和巧克力状态下'yes'的百分比,但我不确定如何计算。我将创建一个百分比函数: dict1 = {'Milky': ['yes', 'no', 'no', 'yes', 'no'], 'Chocolate': ['yes', 'no', 'yes', 'yes', 'no'] } for j in dict1: 然后将其应用到词典理解中: def percentage

巧克力和牛奶是试验中的条件,
'yes'
'no'
是每个试验的反应


我想计算乳白色状态(
2/5*100
)和巧克力状态下
'yes'
的百分比,但我不确定如何计算。

我将创建一个百分比函数:

dict1 = {'Milky': ['yes', 'no', 'no', 'yes', 'no'],
         'Chocolate': ['yes', 'no', 'yes', 'yes', 'no']  }  

for j in dict1:
然后将其应用到词典理解中:

def percentage(of, in_):
    return in_.count(of) * 100 / len(in_)

容易的。得到“是”的回答数,除以总的回答数,再乘以100。这就是我一直试图做的,但代码似乎不起作用。你有这方面的代码吗?@Anonypy:你有什么代码似乎不起作用?谢谢!然而,我的目标是把巧克力的百分比和牛奶的百分比放在两个独立的变量中。这是可能的吗?只需将结果保存在一个变量中:
result={key:percentage(value,'yes'),key,value in dct.items()
并获取值,访问
result['Milky']
result['Chocolate']
。吹毛求疵:我要重命名
inp
search
。现在还不清楚它们是什么。嘿,是的,我只是循环使用了一个“如果”语句。谢谢@BrandonIbbotson你是对的,我当时不是很有创意,我希望他们现在更好。
>>> dct = {'Milky': ['yes', 'no', 'no', 'yes', 'no'], 
...        'Chocolate': ['yes', 'no', 'yes', 'yes', 'no']}
>>>
>>> {key: percentage('yes', values) for key, values in dct.items()}
{'Chocolate': 60.0, 'Milky': 40.0}