问题描述
这是代码
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的功能不同。当仅使用两个参数进行调用时,则说明您没有提供足够的参数。那是一个错误,事情就此止步。当您提供三个参数时,它将遍历并实际调用该函数。当到达调用带有太多参数的求和的行时,那就是错误。我不知道这个求和函数,也没有在这里定义它,所以我真的不知道它期望什么参数。但是错误消息似乎暗示只需要两个