擅长:python、mysql、java
<p>这个问题很好地展示了<code>dictionary</code>数据结构的优点以及您的问题如何从中受益。因此,首先,我们将元组列表转换为字典(<code>dict</code>-calls),然后根据需要“组合”这两个dict以获得所需的结果。你知道吗</p>
<pre><code>lst1 = [('zaidan', 0.0013568521031207597),('zimmerman', 0.0013568521031207597), ('ypa', 0.004070556309362279)]
lst2 = [('zimmerman', 0.0013568521031207597), ('ypa', 0.004070556309362279), ('zaidan', 0.0013568521031207597)]
dct1 = dict(lst1)
dct2 = dict(lst2)
res = {k: v * dct2.get(k, 1) for k, v in dct1.items()}.items()
</code></pre>
<p>产生:</p>
<pre><code>dict_items([('zaidan', 1.8410476297432288e-06), ('zimmerman', 1.8410476297432288e-06), ('ypa', 1.656942866768906e-05)])
</code></pre>
<p>如果<code>dict_item</code>数据类型令人困惑,您可以将其强制转换为普通列表。你知道吗</p>
<pre><code>res = list(res)
print(res)
# [('zaidan', 1.8410476297432288e-06), ('zimmerman', 1.8410476297432288e-06), ('ypa', 1.656942866768906e-05)]
</code></pre>