Python 每当我尝试运行此程序时,我都会得到';名称错误:名称';狗龄';未定义;我该如何解决这个问题?
我总是在将变量dog_age更改为float时遇到一个name错误,如何防止这种情况发生Python 每当我尝试运行此程序时,我都会得到';名称错误:名称';狗龄';未定义;我该如何解决这个问题?,python,Python,我总是在将变量dog_age更改为float时遇到一个name错误,如何防止这种情况发生 import traceback def calculator(): dog_age = input("Input dog years: ") try: dog_age = float(dog_age) 您的try块在函数定义之外。除了之外,在没有的情况下尝试也是无效的。首先: def calculator(): dog_age = float(input(&
import traceback
def calculator():
dog_age = input("Input dog years: ")
try:
dog_age = float(dog_age)
您的
try
块在函数定义之外。除了之外,在没有的情况下尝试也是无效的。首先:
def calculator():
dog_age = float(input("Input dog years: "))
如果随后添加一个try/except
,请确保它在函数范围内:
def calculator():
try:
dog_age = float(input("Input dog years: "))
except ValueError:
print("That's not a number, sorry!")
缩进在Python中很重要,它定义了作用域。实际上
try:dog\u age=float(dog\u age)
在函数calculator()之外。
'try'块可能缺少正确的缩进?根据@Cid的注释,这也是无效代码,解决此问题后将抛出另一个错误<代码>尝试块必须与除块之外的块配对。如果您不希望在dog\u age
无法转换为float时发生任何事情,除了:pass
就可以了。