在 Python 中“调用”函数是什么意思?[关闭]
- 2025-02-11 09:50:00
- admin 原创
- 62
问题描述:
“call” 是什么意思?有什么作用?如何在 Python 中“调用”一个函数?
解决方案 1:
当你“调用”一个函数时,你基本上只是告诉程序执行该函数。因此,如果你有一个将两个数字相加的函数,例如:
def add(a,b):
return a + b
你可以像这样调用该函数:
add(3,5)
这将返回 8。在这种情况下,您可以将任意两个数字放在括号中。您也可以像这样调用函数:
answer = add(4,7)
在这种情况下,这将把变量答案设置为等于 11。
解决方案 2:
我来回答一个稍微高级一点的问题。在 Python 中,函数是一等对象。这意味着它们可以“动态创建、销毁、传递给函数、作为值返回,并拥有与编程语言中其他变量一样的所有权利”。
在 Python 中,调用函数/类实例意味着调用__call__
该对象的方法。对于旧式类,类实例也是可调用的,但前提是创建它们的对象有__call__
方法。新式类也是如此,只是新式类没有“实例”的概念。而是“类型”和“对象”。
正如Python 2 数据模型页面所述,对于函数对象、类实例(旧式类)和类对象(新式类),“x(arg1, arg2, ...)
是 ” 的简写x.__call__(arg1, arg2, ...)
。
因此,每当您使用简写定义函数时,def funcname(parameters):
您实际上只是创建了一个具有方法的对象__call__
,而 的简写__call__
只是命名实例并在其后加上包含调用参数的括号。由于函数是 Python 中的第一类对象,因此可以使用动态参数动态创建它们(因此接受动态参数)。这对于您稍后将阅读的装饰器函数/类非常有用。
现在我建议阅读官方 Python 教程。
解决方案 3:
“调用”是指在您的代码中引用在其他地方编写的函数。此函数“调用”可以引用标准 Python 库(随 Python 安装的内容)、第三方库(其他人编写的您想要使用的内容)或您自己的代码(您编写的内容)。例如:
#!/usr/env python
import os
def foo():
return "hello world"
print os.getlogin()
print foo()
我创建了一个名为“foo”的函数,并在稍后使用该 print 语句调用它。我导入了标准“os”Python 库,然后在该库中调用了“getlogin”函数。
解决方案 4:
当你调用一个函数时,它被称为“调用”一个函数。例如,假设你定义了一个函数来计算两个数字的平均值,如下所示-
def avgg(a,b) :
return (a+b)/2;
现在,要调用该函数,请按照下列步骤操作。
x=avgg(4,6)
print x
x 的值为 5 。