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

Python采集年月日输入转总年份计算代码输出错误如何修复?

Python代码修改方案

原代码存在4个需要修正的问题:

  • input()返回值为字符串类型,需转换为数值类型才能参与算术运算
  • 调用gettime函数时未传入y、m、d三个必填参数
  • 数值计算结果不能直接和字符串用+拼接,需做类型转换或者用字符串格式化输出
  • 计算结果需保留1位小数,匹配示例输出格式要求

修改后的完整代码如下:

# 采集用户输入并转换为float类型
y = float(input("Enter year: "))
m = float(input("Enter months: "))
d = float(input("Enter the days: "))

def gettime(y, m, d):
    totaltime = y + m / 12 + d / 365
    return totaltime

# 调用函数并格式化输出,保留1位小数
total_years = gettime(y, m, d)
print(f"Total time in years is {total_years:.1f} years")

用示例输入测试的话,2年+6/12年+73/365年=2+0.5+0.2=2.7,完全符合预期输出要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 20:24:01