在使用word中时python中会发生什么

时间:2019-03-09 15:03:14

标签: python-3.x

当我用单词in执行此代码时会发生什么情况(假设我创建了A类),更具体地说是如何比较对象:

my_list = [A(1), A(2), A(3)]
A(1) in my_list  # returns True
A(-3) in my_list  # returns False

我对正在发生的事情的技术细节(如果调用了hashrepr等)感兴趣,因此我对专家级对此问题的答案非常感兴趣

1 个答案:

答案 0 :(得分:1)

可以将表达式x in y视为:

any(x is e or x == e for e in y)

请注意,如果您尚未为类A(12) != A(12)定义相等性,则可能是A