这是给我elif语句的语法错误,但是我不知道为什么。请帮助我。
- miles = 0.0
- kilometers = 0.0
- def show_menu():
- print("1. Convert miles into kilometers.")
- print("2. Convert kilometers into miles.")
- print("3. Exit")
-
- def convert_miles_to_kilometers(miles):
- miles* 1.609
- return kilometers
- def convert_kilometers_to_miles(kilometers):
- kilometers * 0.621
- return miles
- show_menu
- choice = int(raw_input("Enter a choice [1-3]: "))
- if choice == 1:
- miles = float(raw_input("How many miles? "))
- kilometers = convert_miles_to_kilometers(miles)
- print ("%f miles is %f kilometers." % (miles, kilometers)
- elif choice == 2:
- kilometers = float(raw_input("How many kilometers? "))
- miles = convert_kilometers_to_miles(kilometers)
- print("%f kilometers is %f miles." % (kilometers, miles))
- else:
- print("Good-bye!")
-
# 回答1 首先,我们要看错误消息本身,所以我们不需要遍历所有可能的错误,看看是否有任何申请。第二,你总是想检查前一行之前发布。如果你没有正确格式化的,译员可以认为这条线是上一行的延续。请注意,有其他程序中的语法错误。你应该测试每个函数创建它,在代码之前下一个函数。
- miles = 0.0
- kilometers = 0.0
- def show_menu():
- print("1. Convert miles into kilometers.")
- print("2. Convert kilometers into miles.")
- print("3. Exit")
-
- def convert_miles_to_kilometers(miles):
- miles* 1.609
- return kilometers
- def convert_kilometers_to_miles(kilometers):
- kilometers * 0.621
- return miles
- show_menu
- choice = int(raw_input("Enter a choice [1-3]: "))
- if choice == 1:
- miles = float(raw_input("How many miles? "))
- kilometers = convert_miles_to_kilometers(miles)
- print ("%f miles is %f kilometers." % (miles, kilometers)
- #
- # if you get an error message for this line, instead of
- # the "elif", you know the error is on the previous line
- print("test message")
- elif choice == 2:
- kilometers = float(raw_input("How many kilometers? "))
- miles = convert_kilometers_to_miles(kilometers)
- print("%f kilometers is %f miles." % (kilometers, miles))
- else:
- print("Good-bye!")
# 回答2 安德森,我阅读你的代码,而不是把它通过编译器,所以我可能会错过一些东西。行9和12看起来应该作业公里和英里,分别。同时,看来线19丢失了一个括号。请下次你发布一个问题错误,把错误消息。我敢肯定,python告诉你哪里错误,所以回去读,看他们是否有意义的消息。你给我们的更多的信息,我们可以帮助你。好运吧!
# 回答3 非常感谢我已经一遍又一遍代码并没有看到19行)。唯一说的是语法错误,这是显示第20行。
# 回答4 现在它不是印刷我的菜单。我怎么调用这个函数?第14行
# 回答5 不用担心——在许多语言,语法错误往往会出现线后实际的错误。这是因为他们希望完成的声明中,它不是;相反,一个奇怪的令牌它预计不会出现。由于错误显示不完整的语句是第二行,首先在....是错误的标记这说得通吗?我认为你需要使用一对括号后面你的电话show_menu行14:
好运吧!