6
我想知道哪个反转python中的字典是一种有效的方法。我还想通过比较键和选择较小的假设可以比较来摆脱重复值。这里是反相的字典:在Python中反转字典
inverted = dict([[v,k] for k,v in d.items()])
我想知道哪个反转python中的字典是一种有效的方法。我还想通过比较键和选择较小的假设可以比较来摆脱重复值。这里是反相的字典:在Python中反转字典
inverted = dict([[v,k] for k,v in d.items()])
要使用最大的键删除重复项,请按值对字典迭代器进行排序。 “通过比较键并选择了较小的假设他们可以比大我也想摆脱重复值的。”
import operator
inverted = dict((v,k) for k,v in sorted(d.iteritems(), key=operator.itemgetter(1)))
下面是一个简单而直接执行反向字典和保留任何重复值较大的:
inverted = {}
for k, v in d.iteritems():
if v in inverted:
inverted[v] = max(inverted[v], k)
else:
inverted[v] = k
这可以拧紧机位与dict.get():
inverted = {}
for k, v in d.iteritems():
inverted[v] = max(inverted.get(v, k), k)
该代码使得更少的比较和使用较少的内存比使用排序的方法()。
:以字典的通话将使用插入的最后关键 – agf