参数与实参?他们究竟是什么?

2 投票
2 回答
1137 浏览
提问于 2025-04-18 10:46

我刚开始学习Python编程,最近接触到了函数、参数和实参这些概念。

我查了很多资料,甚至看了StackOverflow上类似问题的回答,但还是搞不清楚它们的意思。

有些人说,参数是我们在定义函数时给它的变量,而实参是我们在调用函数时传入的值。还有一些人说,不是这样的,参数和实参是一样的,做的事情也一样……

有没有人能简单明了地告诉我参数和实参的意思?

参数和实参算不算变量?

我们用它们有什么目的?

请不要解释得太复杂,我还是个初学者。

非常感谢!

2 个回答

1

这样理解:

参数: 参数就是一个值,当你调用一个程序时,它希望你传递这个值。程序的声明部分会定义这些参数。

实参: 实参就是你在调用程序时,传给参数的具体值。调用代码在调用程序时提供这些实参。

举个例子:

int add (int value1, int value2)  // Here value1 and value2 are PARAMETERS.
{
return value1+value2;
}

现在在调用这个函数的时候

answer = add(2,3);  // Here values 2 and 3 are ARGUMENTS. 

在Python中也是一样,声明的时候叫参数,调用的时候叫实参。

可能有些人对我说的有不同看法,但这就是编程界普遍的理解。

6

根据官方文档的说明:

参数是指在函数定义中出现的名称,而实参是指在调用函数时实际传递的值。参数定义了一个函数可以接受什么类型的实参。例如,给定以下函数定义:

def func(foo, bar=None, **kwargs):
    pass

foobarkwargsfunc的参数。但是,当调用func时,例如:

func(42, bar=314, extra=somevar)

传递的值42314somevar就是实参。

词汇表中对它们的定义是:

  • 实参:在调用函数时传递给函数(或方法)的值。
  • 参数:在函数(或方法)定义中指定函数可以接受的实参(或在某些情况下,多个实参)的命名实体。

Python并不像其他一些语言那样有“变量”——它有“名称”来指代“对象”。可以参考“像Pythonista一样编写代码”“关于Python名称和值的事实与神话”

撰写回答