在Python中,有没有一种方法可以使用变量比较符号来比较值?例如,我希望能够将符号更改为 <
或>
,并有 if
声明仍然有效。
下面的代码展示了这个想法,但它在 Python 中无效:
sign = <
if 1 sign 2:
print("This works")
最佳答案
Python 的运算符如 <
和>
不是值,因此您不能将它们分配给变量。但是,函数在 Python 中是值,因此您可以对它们进行赋值。 operator
模块具有名为 lt
的函数和gt
分别是:
>>> from operator import lt, gt
>>> lt(1, 2)
True
>>> gt(1, 2)
False
>>> sign = lt
>>> sign(1, 2)
True
所以你可以写:
from operator import lt, gt
sign = lt
if sign(1, 2):
print('This works')
关于python - 使用可修改符号进行比较(python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60106890/