我在下面有这段代码,当我选择选项 1、选择选项 2 和选择其他选项时,它都能正常工作。
但是如果用户不选择任何选项并按回车键,我想显示一条消息“空”并再次要求用户选择一个选项。
但在这种情况下,当该字段为空时,我会收到此错误:
invalid literal for int with base 10
代码:
def nav(number):
while True:
option = int(raw_input(number))
if filename == 1:
createjob()
elif option == "2":
print filename
elif option == "":
print "empty"
else:
print "Option not available"
def main():
print " 1 - option 1"
print " 2 - option 2"
nav("Choose an option:")
main()
最佳答案
我不确定你为什么有这么多 while 循环...... 无论如何,您遇到此问题的原因是因为当用户按下输入时,“”正试图转换为 int。也许你应该改用字符串。即:
def nav(option_number):
option = raw_input(option_number)
if option == "1":
test()
elif option == "2":
print option
elif option == "":
print "empty"
else:
print "option unavailable"
print " 1 - Option 1"
print " 2 - Option 2"
nav("Select option:")
关于python - 以 10 为底的 int 的无效文字 - 当用户不选择任何选项时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30371306/