嵌套函数 II
干得好,您刚刚把一个函数嵌套在了另一个函数中。嵌套函数另一个很有意思的原因是它可以形成闭包。这意味着内层函数在被调用时,会记住其外层作用域的状态。因此,即使外层函数已经执行完毕,在外层作用域中本地定义的任何内容,内层函数仍然可以使用。
让我们继续前进!在本练习中,您将完成内层函数 inner_echo() 的定义,然后多次调用 echo(),每次传入不同的参数。完成练习,看看会输出什么结果!
本练习是课程的一部分
Python 函数入门
练习说明
- 用函数名
inner_echo()和单个参数word1完成内层函数的函数头。 - 完成
echo()函数,使其返回inner_echo。 - 我们已经调用了
echo(),传入参数 2,并将返回的函数赋给twice。您的任务是再次调用echo(),传入参数 3。将返回的函数赋给thrice。 - 点击 "Submit Answer" 来调用
twice()和thrice()并打印结果。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Define echo
def echo(n):
"""Return the inner_echo function."""
# Define inner_echo
def ____(____):
"""Concatenate n copies of word1."""
echo_word = word1 * n
return echo_word
# Return inner_echo
# Call echo: twice
twice = echo(2)
# Call echo: thrice
# Call twice() and thrice() then print
print(twice('hello'), thrice('hello'))