[Python-Dev] TypeError: f() missing 1 required positional argument: 'x'
tjreedy at udel.edu
Thu Sep 20 19:25:28 CEST 2012
On 9/20/2012 11:52 AM, Guido van Rossum wrote:
> Maybe this is also a good time to start distinguishing between
> arguments (what you pass, call syntax) and parameters (what the
> function receives, function definition syntax)?
One standard usage (and mine) is that parameters are the (local) names
that arguments get bound to. I *believe* that Knuth used this also, but
I cannot find a reference. Here is the CS part of
See the last sentence.
Main article: Parameter (computer science)
When the terms formal parameter and actual parameter are used, they
generally correspond with the definitions used in computer science. In
the definition of a function such as
f(x) = x + 2,
x is a formal parameter. When the function is used as in
y = f(3) + 5 or just the value of f(3),
3 is the actual parameter value that is substituted for the formal
parameter in the function definition. These concepts are discussed in a
more precise way in functional programming and its foundational
disciplines, lambda calculus and combinatory logic.
In computing, parameters are often called arguments, and the two words
are used interchangeably. However, some computer languages such as C
define argument to mean actual parameter (i.e., the value), and
parameter to mean formal parameter."
Terry Jan Reedy
More information about the Python-Dev