【发布时间】:2026-02-09 16:30:01
【问题描述】:
我一直在开发一个 Python 包,其中包含用于创建查询的功能,它是通过重载 Python 运算符 ==、!=、>=、<=、>、< 来实现的在包中的某些类上(它的语法与 Pandas DataFrame 上的过滤/索引非常相似)。
在编写文档的过程中,我发现自己正在寻找 Python <= 和 >= 运算符的通用术语 - 这是句子中的一个 sn-p:
...使用 Python 不等式运算符
<=和>=...
我后来使用术语'严格不等式运算符'来指代>和<。
我意识到我的数学背景正在显示,因为这些是在那里使用的术语(特别是与数学= 用于方程式世界的对比),但我不一定会进入 Python 世界.特别是因为 不等式运算符 会与 != 混淆。
所有六个都属于比较运算符(例如the official language reference 和this Real Python tutorial),但我的问题是:
是否有涵盖四个运算符<=>=<> 的术语?(具体不是==!=)
我意识到我可以通过使用术语比较运算符来解决我的文档问题,并通过列出它们来明确我在该类别中指的是哪些。但是我还是很好奇这个问题。
【问题讨论】:
-
即使特别提到这 4 个,我仍然会使用术语“比较运算符”(并使用 [in] 相等运算符来引用其他 2 个)。但这是为了谁的利益?通用命名法的目的是在与其他人讨论这些事情时消除歧义。如果您定义的“比较运算符”与其他人可能使用该术语的不同,那将是误解和混淆的根源。
-
不等式运算符?
-
“关系运算符”可以涵盖的运算符远不止这 6 个(当然也可以用来描述
is、is not、in和not in)。这并不为人所知,但 ordering operator 肯定会更具描述性,而不是暗示==或!=。 -
@KarlKnechtel:它们在语义上完全不同。具有自然排序比具有自然相等关系的要求要强得多,并且支持顺序比较的类型比相等比较要少得多。
-
@Tim oups,我没有仔细阅读你的问题。你是对的,不平等也不适合
>=,因为它也适用于平等条款。 “比较”这个词将最接近 IMO 的真相。或者也许根本不给它们一个通用名称,只需在文档中列举它们。
标签: python math syntax terminology