Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
^=运算符在Python中是什么意思?_Python_Python 3.x_Operators - Fatal编程技术网

^=运算符在Python中是什么意思?

^=运算符在Python中是什么意思?,python,python-3.x,operators,Python,Python 3.x,Operators,在Python中,^=运算符是什么意思 我在线检查,它说“对操作数执行位异或运算,并将值赋给左操作数” 我到处玩,我仍然很困惑。有人能举例说明吗?当只有奇数个条件为真时,XOR将返回真 假设出现以下情况: Condition A: False; Condition B: False => A XOR B = False Condition A: False; Condition B: True => A XOR B = True Condition A: True; Conditi

在Python中,
^=
运算符是什么意思

我在线检查,它说“对操作数执行位异或运算,并将值赋给左操作数”


我到处玩,我仍然很困惑。有人能举例说明吗?

当只有奇数个条件为真时,XOR将返回真

假设出现以下情况:

Condition A: False; Condition B: False =>  A XOR B = False
Condition A: False; Condition B: True => A XOR B = True
Condition A: True; Condition B: False => A XOR B = True
Condition A: True; Condition B: True => A XOR B = False
假设我们有以下代码:

a = True
b = True
b ^= a #b XOR a
print(b) #Result = False

c = True
d = False
d ^= c #d XOR c
print(d) #Result = True
回答khelwood对这一回答的评论

您必须首先了解二进制(base-2)系统。让我们来看第6和第3个例子。这些数字在base-2中分别转换为0110和0011。当我们对数字执行异或运算时,我们将对每个位执行运算

让位按b3、b2、b1、b0的顺序排列。 在b3处,0或0将为您提供0 在b2位置,1或0将为您提供1 在b1位置,1或1将为您提供0 在b0位置,0或1将给您1

因此,base-2中的结果为0101,base-10中的结果为5

a = 6
b = 3
b ^= a
print(b) #Result = 5

很确定你的意思是d^=c是真的,d是一个不同于的布尔值c@khelwood编辑了答案以回答您的问题。@ec2604对不起,我错了
x^=y
表示
x=x^y
。那就看