Python3.x中,当使用"def function(foo):"时,"foo"用于什么?

5

你好,我想了解一些关于Python3.x的内容。

def function(foo):中,foo是用来做什么的?为什么不直接使用def function():呢?

我知道它们之间有区别,但是我并不理解各种书籍和教程中所提供的定义。


1
foo是一个函数参数。它与Python 3没有任何特定关系。 - Matt Ball
3个回答

10

展示比解释更容易,这里有一个例子:

def function():
    print("Hello")

无论用户如何,此函数始终将打印Hello。现在看看这个函数:

def function(foo):
    print(foo)

正如您所看到的,我们打印的是foo(称为函数参数),而不是字符串。这样,当我们调用函数时,我们可以(在这种情况下,我们必须)用任何值替换函数调用中的foo,并且该值将被设置为foo。它基本上是函数内部的局部变量,在调用函数时由用户定义。

几个例子:

 In[1]: function("Hey")
Out[1]: "Hey"
 In[2]: function(5)
Out[2]: 5

如果答案让您满意,请记得将其标记为“已接受”,这样您就可以获得声望,回答者也会受益。 - user1632861

5

这只是一个轻松的玩笑。有一个古老的美国军事首字母缩略词 FUBAR,意思相当于“随便填什么都行”,它不仅适用于Python。

例如:

int function1( int value ) { ... }


int function1( string value ) { ... }

foo = 定义您需要的状态。


我认为这不是原帖所问的。 - Matt Ball

2

这是一个参数。如果将函数定义为 function(),则必须不带参数调用它。如果将其定义为 function(foo),则必须带一个参数调用它。该参数的副本可作为名为 foo 的局部变量在函数中使用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接