如何从三个数组中找到不常见的元素?

Bla*_*Sql 1 data-structures

A,B,C是数组:

A = {1,2,3,4}
B = {8,1,2,3}
C = {1,2,9,3}
Run Code Online (Sandbox Code Playgroud)

结果是来自三个数组的不常见值

结果 = {4,8,9}

问我可以实现的逻辑?

the*_*n.a 5

可能还有其他一些更好的答案.但这是最简单的一个.

  1. 在第4行,我采取了3集的交叉点
  2. 在第7行,我拿了三套联盟
  3. 在第10行,Union和交叉点的差异或异或运算

我希望它有所帮助: -

>>> a = {1,2,3,4}
>>> b = {8,1,2,3}
>>> c = {1,2,9,3}

>>> d = a & b & c
>>> print(d)
{1, 2, 3}

>>> e = a | b | c
>>> print(e)
{1, 2, 3, 4, 8, 9}

>>> f = d^e
>>> print(f)
{4, 8, 9}
Run Code Online (Sandbox Code Playgroud)