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

Python中main()无法识别返回值,报'name 'conversion' is not defined'错误

解决"name 'conversion' is not defined"错误并接收函数返回值

问题出在你调用convert(time)时,没有把函数的返回值赋值给main函数里的变量。conversion是convert函数内部的局部变量,只能在函数内部使用,main函数无法直接访问它。

只需要修改main函数里的代码,把函数调用的结果赋值给一个变量(可以叫conversion,也可以是其他名字),之后就能正常打印这个值了:

def main():
    time = input("What time is it? ")
    # 将convert函数的返回值赋值给conversion变量
    conversion = convert(time)
    print(conversion)

def convert(time):
    hours, minutes = time.split(":")
    print("==1== " + f'{hours = }' + f'{minutes = }')
    print("==2== " + f'{hours = }')
    print("==3== Float of hours", float(hours))
    print("==4== Float of minutes", float(minutes))
    conversion = float(hours)+(float(minutes)/60)
    print ("==5== ",f'{conversion = }')
    print ("==6== ", conversion)
    return conversion

if __name__ == "__main__":
    main()

这样修改后,main函数就能拿到convert返回的十进制时间值并打印,同时你的调试语句也能正常工作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 15:13:15