我必须创建一个函数mega_calculator
,它接受两个输入:一个函数和次数,我应该重复它。当我调用函数时,它应该返回一个值。在父函数(mega\u calculator)中,现在我必须创建第二个函数,在创建它时通过给它参数*args
来接受与父函数mega_calculator
相同数量的输入。我的问题是,如何访问第二个函数中的父函数参数?你知道吗
我认为*args
是一个参数列表,因此如果我调用第一个和第二个值,我可以保存函数操作并将数量重复到变量中,以便稍后在第二个函数中使用,但这不起作用。你知道吗
我该怎么办?,任何帮助都会受到极大的爱戴和感激。我们必须有奇怪的函数设置,所以不幸的是,我不能只是做一个很好的简单的while循环。你知道吗
def mega_calculator(fn, repeat = 1000):
def helper(*args):
function = *args[0]
bob = *args[1]
while bob > 0:
total += function
return (total/repeat)
return helper()
`
您误解了;
args
捕获传递给helper()
的任何参数(尚未显式命名),但您没有将任何参数传递给该函数。你知道吗而是直接调用它,没有任何参数。你知道吗
但是,您不需要在这里传入参数,因为
fn
和repeat
可以从闭包直接访问。你知道吗很可能赋值要求您返回
helper
并用以下参数调用fn
:现在
mega_calculator()
返回一个新的function对象,当调用该对象时,它会在调用该函数时将给定的任何参数传递给fn
。你知道吗小型演示:
add()
函数被调用了10次,但是由于helper也将得到的和除以重复次数,所以返回的值仍然是11。你知道吗相关问题 更多 >
编程相关推荐