Wolfram mathematica Xor线程和False的列表

Wolfram mathematica Xor线程和False的列表,wolfram-mathematica,Wolfram Mathematica,我正在尝试实现一个BitXor的变体,它将两个真值列表作为输入,并返回按元素排序的Xor真值列表作为输出 MyXor = Thread[Xor[#, #2]] &; 它工作正常,除非输入相同。我希望得到 {False,False,False,False,False,False,...} 但我只是 False 有没有办法避免这种情况,而不强制函数检查这种情况并重新构造False列表以输出?问题在于,当to参数相同时,Xor总是给出False。一种解决方案是使线程中的Xor不被计算 M

我正在尝试实现一个BitXor的变体,它将两个真值列表作为输入,并返回按元素排序的Xor真值列表作为输出

MyXor = Thread[Xor[#, #2]] &;
它工作正常,除非输入相同。我希望得到

{False,False,False,False,False,False,...}
但我只是

False

有没有办法避免这种情况,而不强制函数检查这种情况并重新构造False列表以输出?

问题在于,当to参数相同时,
Xor
总是给出
False
。一种解决方案是使
线程中的
Xor
不被计算

MyXor = Thread[Unevaluated[Xor[#, #2]]] &

l = RandomChoice[{True, False}, 10];
MyXor[l, l]