擅长:python、mysql、java
<p>您可以在此处使用字典理解:</p>
<pre><code>d = {0.475: [10, 11], 0.434: [12, 14], 0.404: [16, 18], 0.341: [21, 22]}
print({tuple(d[n]):n for n in d})
</code></pre>
<h3>输出</h3>
<pre><code>{(10, 11): 0.475, (12, 14): 0.434, (16, 18): 0.404, (21, 22): 0.341}
</code></pre>
<p>不能直接反转键和值,因为列表是不可损坏的,因此不能保留为键</p>
<h3>更新</h3>
<p>如果您有重复列表,您可能希望创建重复列表的枚举。您可以这样做:</p>
<pre><code>from collections import defaultdict
d = {0.475: [10, 11], 0.434: [12, 14], 0.404: [16, 18], 0.341: [12, 14]}
new_d = dict()
d_counts = defaultdict(int)
for n in d.keys():
value = tuple(d[n])
new_d[(value, d_counts[value])] = n
d_counts[value] += 1
print(new_d)
</code></pre>
<h3>输出2</h3>
<pre><code>{((10, 11), 0): 0.475, ((12, 14), 0): 0.434, ((16, 18), 0): 0.404, ((12, 14), 1): 0.341}
</code></pre>