擅长:python、mysql、java
<p>@Ignaco是对的,你为什么要把“流”和“笑”包括进来。。。你知道吗</p>
<p>不过,您可以按以下方式编写代码:</p>
<pre><code>data = ('(Laughter flower)', {'laughter': (8.5, 0.9313), 'flower': (7.88, 1.1718),
'the':(4.98, 0.9145), 'puppy':(7.58, 1.4581), 'died':(1.56, 1.198), 'laugh':
(9.5, 0.1),'flow': (2.3, 0.51)})
# Unpack for naming
keys, vals = data
# Assume () and first and last
look_for = keys[1:-1].lower().split()
# Get relevant numbers
nums = [vals[k][0] for k in look_for]
# Print average
print sum(nums) / len(nums)
</code></pre>
<hr/>
<p>因此,将函数推广为仅平均相关键的第一个元素:</p>
<pre><code>def somefunc(keys, dct):
vals = [dct[k][0] for k in keys]
return sum(vals) / float(len(vals))
</code></pre>
<p>你必须预先处理一些字符串,这样它就是一系列有效的键:</p>
<pre><code>some_string = '(laughter flower)'
keys = some_string[1:-1].lower().split()
print somefunc(keys, some_dict)
</code></pre>