在Python中,abs(a)和operator.abs(a)有什么区别?
它们是完全相同的,并且它们的功能也相同。如果它们是完全相同的,那么为什么会有两个做同样事情的不同函数呢?
如果其中一个具有特定功能,请进行说明。
它们是完全相同的,并且它们的功能也相同。如果它们是完全相同的,那么为什么会有两个做同样事情的不同函数呢?
如果其中一个具有特定功能,请进行说明。
没有区别。文档甚至如此说明:
>>> import operator
>>> print(operator.abs.__doc__)
abs(a) -- Same as abs(a).
from builtins import abs as _abs
# ...
def abs(a):
"Same as abs(a)."
return _abs(a)
abs()
。
abs
和add
有点无意义。例如,operator.abs
和abs
之间没有性能差异(除了对operator.abs
进行属性查找之外,可以通过绑定到本地名称来避免)。 - Martijn Pietersoperator.add
作为示例的原因。 - C Pandaoperator
模块中的东西并不是毫无意义的。 - C Panda