【发布时间】:2021-10-30 13:19:23
【问题描述】:
我们有:(set1,set2)
为什么print(set1 or set2) 返回set1 而不是(set1 | set2)
和print(set1 and set2) 返回set2 而不是set1.intersection(set2)?
【问题讨论】:
-
@ThierryLathuille 我认为副本不太正确。 OP 询问为什么
and和&以及or和|之间存在差异。他们不会问为什么or和and返回一个非布尔值 -
and是布尔操作数,相当于您可能熟悉的其他语言中的&&。&是 Python 中的按位and,它在集合中被连接到调用set.intersection方法(实际上,它是相反的方式,但想法是成立的)。or、|和union也是如此。 -
@DeepSpace 对,这个问题有两个部分,我添加了第二个关于
&和and的副本。
标签: python python-3.x set operands