在Python中,我想要编写一个列表推导式来迭代2个字典键的并集。这里是一个玩具示例:
A = {"bruno":1, "abe":2}.keys()
B = {"abe":5, "carlton":10}.keys()
>>>[ k for k in A | B ]
我遇到了以下错误:
Traceback (most recent call last)
<ipython-input-221-ed92ac3be973> in <module>()
2 B= {"abe":5, "carlton":10}.keys()
3
----> 4 [ k for k in A|B]
TypeError: unsupported operand type(s) for |: 'list' and 'list'
理解在1个字典中运作正常。例如:
>>>[ k for k in A]
['bruno', 'abe']
我不确定错误出在哪里。我正在按照教材上的例子进行操作,该教材指出这种联合和交集运算符应该可以正常工作。请告诉我您的想法。谢谢。
[ k for k in set(A) | set(B) ]
- Arvindset(A).union(B)
。 - Martijn Pieters