gpt4 book ai didi

我的代码中 "Else:"的 Python 3.1 问题

转载 作者:行者123 更新时间:2023-11-28 22:37:53 25 4
gpt4 key购买 nike

你好我是编码新手,在这里我根据用户的输入写了一个简单的代码。我可以让每个 if 和 elif 响应正常工作,但当输入不是整数时我的程序失败。

def tables_bussed():
tables = input("How many tables can you bus per hour? (I can only read numbers.)")
if int(tables) > 80:
print ("That\'s rediculous, you lying twit.")
tables_bussed()
elif int(tables) > 60:
print ("If what you are saying is true then you have quite a talent!")
elif int(tables) > 30:
print ("Impressive! Yet there\'s always room for improvement, now isn\'t there.")
elif int(tables) > 0:
print ("How sad.")
else:
print ("Are you dumb or just daft.")
tables_bussed()

tables_bussed()

我是否在 else 子句中遗漏了什么?

最佳答案

你需要一个 try except 子句,我不想​​重做你的程序,但这是一般概念

def tables_bussed():
tables = input("How many tables can you bus per hour? (I can only read numbers.)")
try:
tables = int(tables)
except ValueError:
print ('Sorry dude, you must input a number that is an integer')
tables_bussed()

因为我在 try 子句中将表定义为整数,所以您不必重复使用 int(tables) 语句,您可以只测试值

所以在你定义表格之后放置(注意你有一些缩进问题但可能不在你的代码中)

程序会尝试将表解析为整数,如果不成功会提示用户重试

有很多关于 try except 子句的内容,它们对于捕获用户输入问题或您可能遇到的其他问题非常有用

关于我的代码中 "Else:"的 Python 3.1 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36136484/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com