定义函数
这是一个名为 greet_user() 的简单函数,用于打印问候语:
def greet_user():
"""Display a simple greeting."""
print("Hello!")
greet_user()
此示例显示了函数的最简单结构。 第一行使用关键字 def 来通知 Python 你正在定义一个函数。 这是函数定义,它告诉 Python 函数的名称,如果适用,还告诉 Python 函数需要什么样的信息来完成它的工作。 括号包含该信息。 在这种情况下,函数的名称是 greet_user(),它不需要任何信息来完成它的工作,所以它的括号是空的。 (即便如此,括号也是必需的。)最后,定义以冒号结尾。
def greet_user(): 之后的任何缩进行构成函数的主体。 第二行的文本是称为文档字符串的注释,它描述了函数的作用。 当 Python 为程序中的函数生成文档时,它会在函数定义后立即查找字符串。 这些字符串通常包含在三重引号中,这样您就可以编写多行。
print("Hello!") 行是该函数主体中唯一的实际代码行,因此 greet_user() 只有一项工作:print("Hello!")。
当你想使用这个函数时,你必须调用它。 函数调用告诉 Python 执行函数中的代码。 要调用一个函数,您需要写下函数的名称,然后在括号中加上任何必要的信息。 因为这里不需要任何信息,所以调用我们的函数就像输入 greet_user() 一样简单。 正如预期的那样,它打印出 Hello!:
Hello!
向函数传递信息
如果稍微修改函数 greet_user() ,它可以通过名字问候用户。 对于执行此操作的函数,您在 def greet_user() 函数定义的括号中输入用户名。 通过在此处添加用户名,您允许函数接受您指定的用户名的任何值。 该函数现在希望您在每次调用它时都为用户名提供一个值。 当你调用 greet_user() 时,你可以在括号内传递一个名字,比如 'jesse':
def greet_user(username):
"""Display a simple greeting."""
print(f"Hello, {username.title()}!")
greet_user('jesse')
输入 greet_user('jesse') 调用 greet_user() 并为函数提供执行 print() 调用所需的信息。 该函数接受您传递给它的名称并显示该名称的问候语:
Hello, Jesse!
同样,输入 greet_user('sarah') 会调用 greet_user(),将其传递给 'sarah',并打印 Hello, Sarah! 您可以根据需要多次调用 greet_user() 并将其传递给您想要的任何名称,以便每次都能产生可预测的输出。
实参和形参
在前面的 greet_user() 函数中,我们将 greet_user() 定义为需要变量用户名的值。 一旦我们调用该函数并为其提供信息(一个人的名字),它就会打印出正确的问候语。
greet_user() 定义中的变量 username 是一个参数示例,是函数完成其工作所需的一条信息。 greet_user('jesse') 中的值 'jesse' 是参数的一个示例。 参数是从函数调用传递给函数的一段信息。 当我们调用函数时,我们将希望函数使用的值放在括号中。 在这种情况下,参数“jesse”被传递给函数 greet_user(),并将值分配给参数用户名。
人们有时会互换地谈论 arguments 和 parameters 。 如果您看到函数定义中的变量称为 arguments 或函数调用中的变量称为 parameters ,请不要感到惊讶。 |