Python average函数调用异常:输出函数对象而非平均值求助
问题解答
你的问题出在最后一行的函数调用上——你直接打印了函数对象,而没有调用它执行计算。
错误原因
当你写print(average)时,Python会把average这个函数本身当成输出内容,所以会打印出函数的内存地址(也就是你看到的<function average at 0x0000027D09927F70>),而不是执行函数计算平均值。
修正后的代码
def average(num): final = sum(num)/len(num) return final num = [] for x in range(5): num.append(int(input("Please enter a number. "))) print(num) print(average(num)) # 这里要传入参数调用函数
关键说明
函数定义完成后,必须通过函数名(参数)的形式调用它,才会执行函数内部的逻辑并返回计算结果。你之前缺少了括号和要传入的num参数,所以没有触发平均值的计算。
内容的提问来源于stack exchange,提问作者Calax
相关产品推荐
相关产品推荐

