每次运行此代码时都会出现语法错误。我不明白为什么在我的脚本中,我使用相同的结构,它工作得很好。你知道吗
我得到了elif region==2:line first的语法错误。然后,我得到了大量的缩进错误。我把凹痕弄得乱七八糟的。希望有人能发现这个问题。你知道吗
提前谢谢。你知道吗
def main():
back2main = "y"
while back2main == "y":
print("Main Menu");print("1.)Highest Rainfall in one Day");print("2.)Wettest Location in Ireland");print("3.)Average Monthly Raindays");print("4.)[Construct Unique Query]");print("5.)Exit")
choice = input("Please select one of options 1:5 above:")
if choice == 1:
print("1.)Cork");print("2.)Belfast");print("3.)Dublin");print("4.)Galway");print("5.)Limerick")
region = input("Please enter a city from the numbered list above:")
if region == 1:
corkRain = open("CorkRainfall.txt","r")
highestRain = 0.0
for line in corkRain:
data = line.split(" ")
if float(data[3]) > highestRain:
highestRain = float(data[3])
print("Highest rainfall in a single day for Cork: " + str(highestRain) + " mm")
corkRain.close()
back2main = raw_input("Return to Main Menu? (y/n):")
elif region == 2:
belfastRain = open("BelfastRainfall.txt","r")
highestRain = 0.0
for line in belfastRain:
data = line.split(" ")
if float(data[3]) > highestRain:
highestRain = float(data[3])
print("Highest rainfall in a single day in Belfast: ") + str(highestRain)
我建议你试试这个:
您可以用换行符(the \n)替换多个print语句,并且第一行下面的所有代码都需要缩进。此外,elif也因为以下几行而中断:
你的问题是:
如果您想让这些行位于第一个if下面,那么它们应该再缩进一级。你知道吗
执行时被解释为超出上一个作用域,下一个作用域是“if”而不是“elif”,或者如果您想属于上一个作用域,那么它应该是正确的。你知道吗
elif
块在垂直方向上必须与上面的if
块位于同一位置。这意味着elif
下的所有代码,包括elif
都应该向左移动一个选项卡。你知道吗相关问题 更多 >
编程相关推荐