我熟悉在Python中使用'and'、'not'和'or'运算符,并且刚刚了解了'XOR'运算符的工作原理。你知道吗
但是,当我编写这个代码时,它似乎不起作用:
a = 2
b = 12
if a == 2 ^ b == 12:
print("You must be broken") # because TRUE XOR TRUE IS FALSE
if a == 10 ^ b > 12:
print("You must also be broken") # because FALSE XOR FALSE IS FALSE
if a < 10 ^ b > 13:
print("This should print because TRUE XOR FALSE IS TRUE")
if a > 3 ^ b == 12:
print("This should print because FALSE XOR TRUE IS TRUE")
程序没有打印出任何内容?你知道吗
你误解了Python's operator precedence。你知道吗
这种情况:
手段
这意味着
所以这是假的。你知道吗
你大概是说:
其他情况也一样。你知道吗
试试这个,你会得到答案:
发生这种情况是因为那些操作员不像你那样思考。 看看格兰特在评论中发布的有用链接。你知道吗
如果缺少括号,请检查operators precedence,运算符^的优先级高于==
一个简单的解决方案:
相关问题 更多 >
编程相关推荐