布尔变量对符号的布尔运算产生TypeError
,但反过来没有问题:
>>> from sympy import *
>>> x = Symbol('x', bool=True)
>>> x ^ True
Not(x)
>>> True ^ x
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
True ^ x
TypeError: unsupported operand type(s) for ^: 'bool' and 'Symbol'
我可以尝试捕捉:
try :
print True ^ x
except TypeError:
print x ^ True
Not(x)
但是,对于我目前的任务,这是不可能实现的,try-except
因为我必须处理大约 200 个符号。我怎样才能做到这一点?