问题描述
现在我知道这些数据结构中的数据必须是整数类型,这样才能可行,但是它将如何工作?
假设我有一个列表列表或其中包含元组的列表;结果看起来像什么,在逻辑上意味着什么?
list_a = [[1,34,24],[12,727,2]]
list_b =[[12,2]]
some_list = list_a & list_b
# what would the above list look like?
set_1 = {(2,3),(3,4),(4,5)}
set_2 = {(1,(2,5),(6,7),(1,0)}
some_set = set_1 | set2
# what would the above set look like?
我可以在结果数据结构上使用逻辑运算符吗?
if some_value in set1 | set2:
# do something
解决方法
那些本身不是按位运算符。它们是 operator ,每种类型都可以自行定义将如何处理它们。 &
和|
运算符分别映射到对象的__and__
and __or__
methods。设置为这些(intersection and union respectively)定义操作,同时列出do not。列表虽然为+
定义了一个操作(列表串联)。
Sooo…set_1 | set_2
的结果是:
{(2,3),(6,7),(4,5),(3,4),(1,0),(2,3)}
对于其余的问题:Mu。