^= 在 python 中做了啥[关闭]

Posted

技术标签:

【中文标题】^= 在 python 中做了啥[关闭]【英文标题】:What does ^= do in python [closed]^= 在 python 中做了什么[关闭] 【发布时间】:2020-05-23 04:32:18 【问题描述】:

我已经在代码中看到过运算符 ^= 一次,但我不知道它的作用。这用于在数组中查找单个出现的数字。所以 A = [1,1,2,3,3] 它应该返回 2。这就是它的使用方式

def solution(A):
    lone_num = 0
    for number in A:
        lone_num ^= number
    return lone_num

不太清楚它的作用。

【问题讨论】:

我知道^ 用作XOR 或电源运算符,但从未遇到过^= 【参考方案1】:

^ 是binary XOR operator。简而言之,它将输入转换为二进制数并执行按位XOR 操作。

>>> 2^3 # 10 XOR 11
1 # 01

表达式lone num ^= number等价于

lone_num = lone_num ^ number

我很乐意回答您可能有的任何其他问题。

【讨论】:

@chepner 我在发布答案后才意识到这一点。我进行了编辑,以使我的答案更加中肯和简洁。 所以我做对了,所以 lone 从 0 开始然后到 1。它在数组中看到另一个 1 并说它很好。它看到一个 2,然后我得到 2。但是当循环达到 3 时,它如何保持 2?

以上是关于^= 在 python 中做了啥[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

〜运算符在Python中做了啥[重复]

哈希在python中做了啥?

built-in method select 在 Python 3 中做了啥?

对象的 __init__() 方法在 python 中做了啥? [复制]

retranslateUi 在 PyQT 中做了啥

!r 在 str() 和 repr() 中做了啥?