You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python3定义函数返回None值问题:电价时段计算器异常返回排查

问题成因
  • Python的函数默认返回规则:所有没有显式写return语句的函数,执行完成后都会默认返回None。你写的power_price_calculator函数全程仅通过print()直接输出提示内容,没有返回任何自定义值,因此调用后返回值就是None。
  • 你最后一行代码写的是print(power_price_calculator(dayEvaluate, hourEvaluate)),相当于先执行函数本身的打印逻辑输出分段结果,又额外打印了函数的返回值,就出现了多余的None。
修复方法
  1. 如果你不需要拿到分段结果做后续处理,直接删掉最后一行外层的print(),直接写power_price_calculator(dayEvaluate, hourEvaluate)调用函数即可,函数内部已经自带打印逻辑,不需要再嵌套一层打印。
  2. 如果你需要后续用到分段结果,可以把函数内各分支的print(xxx)改为return xxx,最后再打印函数返回值,就不会出现多余内容。
额外逻辑问题提示

你现有代码的小时分段判断逻辑缩进有误,目前写在了while (hourEvaluate not in hour)的循环内部:如果初始传入的hourEvaluate本身就是0-23之间的合法值,while循环不会执行,对应的分段判断逻辑也完全不会运行,只会结束函数没有任何分段输出。建议把分段判断的逻辑调整到和while循环同级,减少一层缩进,放在if dayEvaluate in day[:4]:分支下即可。

内容的提问来源于stack exchange,提问作者MadMarx17

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 13:36:07