有没有办法让 Python 运算符行“==”和“>”返回整数而不是 boolean 值。我知道我可以使用 int 函数 (int(1 == 1)
) 或添加 0 ((1 == 1) + 0
) 但我想知道是否有一种简单的方法可以做到。就像当您希望除法返回 float 时,您可以键入 from __future__ import division
。有什么办法可以让运算符返回整数吗?或者我可以制作一个扩展 __future__._Feature
的类来做我想做的事吗?
最佳答案
您不能覆盖内置的比较函数。从某种意义上说,比较运算符已经在返回 int
。 bool
是 int
的子类,因此您可以对它做任何您可以对 int 做的事情。那么问题就变成了为什么要让比较返回 int 对象而不是 bool 对象?
关于返回整数的 Python 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2777366/