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

为何经convert函数转换后,时间变量仍为str类型而非float?

问题解决:时间转换后变量类型未更新的原因及修复

你的代码问题出在没有接收convert()函数的返回值:

调用convert(meal_time)时,函数确实会把时间字符串转换成float类型并返回,但你没有将这个返回值重新赋值给meal_time变量,所以原变量meal_time依然是初始输入的字符串类型。

修复后的代码

def main():
    meal_time = input("What time is it?").strip()   
    # 将函数返回的float值赋值给meal_time
    meal_time = convert(meal_time)
    print(type(meal_time))

def convert(time):
    hour, minu = time.split(":") 
    hour = float(hour)
    minu = float(minu) / 60 
    return float(hour + minu)

if __name__ == "__main__":
    main()

验证结果

输入7:30后,输出会变为:

<class 'float'>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 05:12:07