x = {'a':set([1]) , 'b':set([2]), 'c':set([3]) }
这是保证只有一个集合中的元素。我需要将其转换为
{'a': 1, 'c': 3, 'b': 2}
以下工作:
x1 = {k:x[k].pop() for k in x.keys()} OR
x1 = {k:next(iter(x[k])) for k in x.keys()}
,但我不喜欢它作为pop()
这里修改原始集合。我需要以下方面的帮助。
- 如何在理解的情况下使用拆箱作为mentioned here。
- 有没有什么办法,我可以用
functools.reduce
这个。 - 什么可以是一个更好的或Pythonic的方式来做到这一点?
'functools.reduce'有相当多什么与您正在尝试执行的操作有关。 – user2357112