Python 为什么我的代码总是返回错误?
当我不断遇到问题时,我正在为我的班级编写代码。我的代码是:Python 为什么我的代码总是返回错误?,python,Python,当我不断遇到问题时,我正在为我的班级编写代码。我的代码是: def MeterToFoot(): meter = float(input("Enter your distance in meters: ")) print(meter*3.279) def FootToMeter(): feet = float(input("Enter distance in feet: ")) print(feet*0.305) FootToMeter() a
def MeterToFoot():
meter = float(input("Enter your distance in meters: "))
print(meter*3.279)
def FootToMeter():
feet = float(input("Enter distance in feet: "))
print(feet*0.305)
FootToMeter()
answer = input("Enter yes or no if you would like to calculate meters to feet: ")
if answer == "yes":
def MeterToFoot():
if answer == "no":
def FootToMeter():
我想知道为什么我总是出错,有人能告诉我为什么吗?
另外,我知道我的代码非常混乱,但我只是python的初学者,所以请在这里耐心听我说
在if条件下移除def
,并保留至少4个空格缩进
def
定义函数;要调用它们,只需使用带有括号的function名称。也没有冒号print(meter*3.279)
没有缩进,因此它被认为超出了metertofot
的范围,这意味着meter
将不会在该点上定义,从而导致错误if
语句需要固定缩进,第二个语句替换为elif
def MeterToFoot():
meter = float(input("Enter your distance in meters: "))
print(meter*3.279)
def FootToMeter():
feet = float(input("Enter distance in feet: "))
print(feet*0.305)
FootToMeter()
answer = input("Enter yes or no if you would like to calculate meters to feet: ")
if answer == "yes":
MeterToFoot()
elif answer == "no":
FootToMeter()
您得到的错误是什么?您似乎不理解定义函数和调用函数之间的区别。没有理由多次使用def METERTOOFT。你的缩进也没有意义。最后——如果需要缩进第二行,为什么不使用
else
而不是第二行。它不在函数中,因此未定义meter
def MeterToFoot():
meter = float(input("Enter your distance in meters: "))
print(meter*3.279)
def FootToMeter():
feet = float(input("Enter distance in feet: "))
print(feet*0.305)
FootToMeter()
answer = input("Enter yes or no if you would like to calculate meters to feet: ")
if answer == "yes":
MeterToFoot()
elif answer == "no":
FootToMeter()