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

狗龄转人类年龄程序无输入提示,运行仅返回Exit Code 0求助

狗龄转人类年龄程序无输入提示问题解决

我写了一个将狗龄转换为人类年龄的Python程序,但测试时完全没出现预期的输入提示,只显示“Process finished with exit code 0”,找不到问题在哪,代码如下:

def calculator():
    dog_age = input("Please enter dog age ")
    try:
        dog_age = float(input("what is your dog age?: "))
        if dog_age < 0:
            print("age can not be a negative number")
        elif dog_age <= 1:
            print(dog_age * 15)
        elif dog_age <= 2:
            print(dog_age * 12)
        elif dog_age <= 3:
            print(dog_age * 9.3)
        elif dog_age <= 4:
            print(dog_age * 8)
        elif dog_age <= 5:
            print(dog_age * 7.2)
        elif dog_age >= 5:
            print(dog_age * 7)

            print("The given dog age", dog_age, "is", round(dog_age, 2),"in human years")
    except ValueError:
            print("please enter a valid number")

问题原因

核心问题是你只定义了函数但没调用它。Python里函数定义后不会自动执行,必须显式调用才会运行函数内部的代码,所以程序直接走完定义流程就结束了,根本没执行输入逻辑。

另外还有几个小问题:

  • 第一个input完全多余,你在try块里又重新获取了一次输入,这个值从来没用到
  • 分支逻辑冲突:elif dog_age >=5会和前面的elif dog_age <=5重叠,5岁的情况会触发两个分支
  • 输出错误:最后round的是狗龄,不是转换后的人类年龄,逻辑完全错了

修复后的代码

def calculator():
    try:
        dog_age = float(input("what is your dog age?: "))
        if dog_age < 0:
            print("age can not be a negative number")
            return  # 非法年龄直接退出函数
        
        # 计算人类年龄
        if dog_age <= 1:
            human_age = dog_age * 15
        elif dog_age <= 2:
            human_age = dog_age * 12
        elif dog_age <= 3:
            human_age = dog_age * 9.3
        elif dog_age <= 4:
            human_age = dog_age * 8
        elif dog_age <= 5:
            human_age = dog_age * 7.2
        else:
            human_age = dog_age * 7
        
        print(f"The given dog age {dog_age} is {round(human_age, 2)} in human years")
    except ValueError:
        print("please enter a valid number")

# 必须调用函数才会执行逻辑
calculator()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 19:59:54