python - 使用可修改符号进行比较(python)

标签 python comparison

在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/

相关文章:

python - 如何使用python执行erlang命令

java - 当 ""== s 为假但 "".equals(s) 为真时

python - Pandas to_sql 设置列类型

python - 使用 AES 加密获取引发 TypeError ("Only byte strings can be passed to C code")

python - 用x个随机值填充numpy数组

JavaScript 比较数组在不应该失败的时候失败

Java对象比较: implementing a `compareTo()` method for a playing card game

Java比较值,最好的方法

c - *完全*相等的 double 为 (a==b) 返回 0

python - jupyter 笔记本中的 Ipython 错误,没有堆栈跟踪