3 回答
TA贡献1831条经验 获得超10个赞
当你“调用”一个函数时,你基本上只是告诉程序执行该函数。所以,如果你有一个添加两个数字的函数,例如:
def add(a,b):
return a + b
你可以这样调用这个函数:
add(3,5)
这将返回8.在这种情况下,你可以在括号中加上任何两个数字。你也可以调用这样的函数:
answer = add(4,7)
在这种情况下,将变量答案设置为11。
TA贡献1798条经验 获得超3个赞
我会给出一个稍微高级的答案。在Python中,函数是第一类对象。这意味着它们可以“动态创建,销毁,传递给函数,作为值返回,并具有编程语言中其他变量的所有权限”。
在Python中调用函数/类实例意味着调用该__call__对象的方法。对于旧式类,类实例也是可调用的,但前提是创建它们的对象具有__call__方法。这同样适用于新式类,除了新实例类没有“实例”的概念。相反,它们是“类型”和“对象”。
从Python 2数据模型页面引用,对于函数对象,类实例(旧样式类)和类对象(新样式类),“ x(arg1, arg2, ...)是”的简写x.__call__(arg1, arg2, ...)。
因此,无论何时使用简写定义函数,def funcname(parameters):您实际上只是使用方法创建对象,__call__而简写__call__就是命名实例并使用包含调用参数的括号来跟随它。因为函数是Python中的第一类对象,所以它们可以使用动态参数动态创建(因此接受动态参数)。这对于稍后将阅读的装饰器函数/类非常方便。
现在我建议阅读官方Python教程。
TA贡献1772条经验 获得超5个赞
“调用”意味着在代码中引用一个写在别处的函数。这个函数“调用”可以用于标准Python库(随Python安装的东西),第三方库(其他人写的你想要使用的东西),或者你自己的代码(你写的东西)。例如:
#!/usr/env python
import os
def foo():
return "hello world"
print os.getlogin()
print foo()
我创建了一个名为“foo”的函数,稍后使用该print语句调用它。我导入了标准的“os”Python库,然后在该库中调用了“getlogin”函数。
添加回答
举报