代码在命令提示符下运行,但不在氢气上运行

Code runs on command prompt but not on hydrogen

我刚开始编程(python3),使用互联网上的可用信息。现在我正在学习如何使用 try/except。我的问题是我编写的代码在 windows 10 的命令提示符下运行良好,但在 shell(Atom/Hydrogen) 中却抛出错误(第 6 行,NameError),因为我没有定义变量“fish”,我知道这通常是相反的,但我只是想了解我是否犯了错误。代码如下:

>try:
>>    fish = int (input("please enter your age "))
>except:
>>    print("That's not a number ")
>>    exit(0)
>if fish <= 15:
>>    parentLicense = input ("have one of your parents have a license? (yes/no) ")
>>    if parentLicense == "yes":
>>>        print ("You can fish")
>>    else:
>>>        print("So sad, you or one of your parents need a license")

嗨 Chiron,欢迎来到社区。您收到未定义错误的原因是因为 fish 在 try 语句中的某些情况下可能是未定义的。 你应该使用

try:
    # try stuff
except ValueError:
    # do stuff when theres an error
else:
    # stuff if try stuff works

else 仅在未引发异常时调用。我会避免使用 bare except ,因为它可能会导致问题并且不是很好的做法。