首页 > 解决方案 > python中的“大于”或“等于”与“等于”或“大于”

问题描述

为什么我们使用“大于”或“等于”,而不是“等于”或“大于”?

foo = 1

if foo >= 1:
  print("Greater than 1")
>>> Greater than 1

而以下会引发 SyntaxError:

foo = 1

if a => 1:
  print("Greater than 1")

为什么使用比较运算符的顺序会有所不同?

标签: pythonboolean-logic

解决方案


>=是一个运算符,而不是两个。与 相同<=。至于为什么顺序是现代编程语言的方式,答案只是“约定”。

做出>=/<=而不是=>/的决定=<是按照惯例,并且在几乎所有使用比较运算符的现有编程语言中都很常见。据我所知,使用比较运算符的最古老的编程语言是 FORTRAN 和 COBOL,它们都遵循>=/<=约定。

我不知道一开始是否有更多的设计原理,除了在数学中我们说“大于或等于”,而不是“等于或大于”,因此>=更准确地反映了这一点。

至于为什么=>=<无效,主要是为了避免冗余和/或混淆。Python 有一个原则,即“应该有一种,最好只有一种明显的做事方式”,但在我所知道的所有其他语言中也是如此。值得注意的是,在其他一些编程语言中=>具有完全不同的含义,尤其是 Javascript,它表示 lambda 表达式。


推荐阅读