如何解决带有递归函数的参数的问题
这是代码
func writeGroups(pdf *pdf.Maroto) {
(*pdf).AddPage()
}
当我为def summationTwo(lower,upper,margin):
"""Returns the sum of the numbers from lower through upper,and outputs a trace of the arguments and returns values on
each call"""
blanks = " " * margin
print(blanks,lower,upper)
if lower > upper:
print(blanks,0)
return 0
else:
result = lower + summation(lower + 1,margin + 4)
print(blanks,result)
return result
summationTwo (1,4)
函数调用插入两个参数时,我得到一个回溯,内容为:“ TypeError:summation()接受2个位置参数,但给出了3个位置参数。”
但是,当我插入两个参数时,会得到以下回溯:“ TypeError:summationTwo()缺少1个必需的位置参数:'margin'”
这是怎么回事?
解决方法
sumsum与sumsumTwo的功能不同。当仅使用两个参数进行调用时,则说明您没有提供足够的参数。那是一个错误,事情就此止步。当您提供三个参数时,它将遍历并实际调用该函数。当到达调用带有太多参数的求和的行时,那就是错误。我不知道这个求和函数,也没有在这里定义它,所以我真的不知道它期望什么参数。但是错误消息似乎暗示只需要两个
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。