Python自定义sum函数未执行且无报错如何排查解决?
问题根因
你的代码问题出在print(sum(56, 74))的缩进和位置:
- 这行代码和函数内部的
return语句缩进对齐,属于sum函数的内部代码 - Python函数运行时遇到
return会直接终止执行,return之后的所有函数内部代码永远不会被触发,所以既不会有输出也不会抛出报错。
修复方案
方案1:把打印逻辑移出函数(推荐)
将print语句取消缩进,放在函数外部调用:
def sum(num1, num2): return num1 + num2 print(sum(56, 74))
运行后会输出正确结果130。
方案2:把打印逻辑放到return之前
如果需要在函数内部打印结果,调整代码顺序即可:
def sum(num1, num2): res = num1 + num2 print(res) return res sum(56, 74)
额外建议
Python内置已经存在同名的sum()函数,用来计算可迭代对象的总和,自定义函数命名建议尽量避开内置函数名,避免后续调用内置功能时出现逻辑冲突,比如可以将自定义函数改名为add_two_numbers更稳妥。
内容的提问来源于stack exchange,提问作者Priyanshu Kumar
相关产品推荐
相关产品推荐

