什么是隐式方法调用和显式方法调用?

mko*_*mko 2 python terminology

我在我的 Python 教科书中读到了这些术语。我无法通过查找它们的字面意思来弄清楚它们的含义。有人可以向我解释一下或为我提供一些参考吗?

\n

--更新术语的上下文

\n
i) (\xc2\xad42).__abs__() # Need parentheses to avoid confusing ... # ... method call '.' with decimal point\nj) (42).__mul__(2) # Even multiplication is a method call\nk) name.swapcase()\nl) name.title().swapcase() # name.title() is an object so ... m) name.upper().find('TOM') # ... we can \xe2\x80\x9ccascade\xe2\x80\x9d method calls.\n
Run Code Online (Sandbox Code Playgroud)\n
\n

希望您现在意识到,到目前为止,您在本课程中完成的大部分操作实际上都是通过隐式调用\n您所使用的对象(数据项)的方法来提供的。\n事实上,所有运算符 (' +'、'*' 等)只是方法调用的语法快捷方式,但只有部分内置函数与方法相对应。

\n
\n

Gni*_*ohz 5

好吧,我不知道你书中这些术语的上下文,但我发现了隐式编程与显式编程。它先讲了explicit programming然后implicit programmingimplicit method call讲了explicit member call。不确定是否有帮助。也许你可以给我们更多细节。

编辑

我想这意味着当您使用3+2or3*2时,您似乎没有显式调用任何方法,但实际上您调用了,因为它们的实现方式是调用(3).__add__(2)or (3).__mul__(2)。所以你隐式调用这些方法。