【发布时间】:2021-03-05 19:17:37
【问题描述】:
这里是初学者。我尝试通过输入 6 个数字来创建彩票游戏。下面的代码尝试检查用户输入的数字:首先,它是否是整数;其次是否在规定的范围内。但是,ValueError 对 int 的检查有效,但 assert 对数字范围的检查无效。
def buy_lottery_ticket():
global credit
credit -= 5
while True:
try:
entered_numbers = input('Enter your 6 favorites numbers!(1 ~ 20): ')
entered_numbers_list = entered_numbers.split(',')
ticket_numbers = {int(n) for n in entered_numbers_list}
print(ticket_numbers)
return ticket_numbers
assert 0 < entered_numbers_list < 21
except ValueError:
print("Not an integer! Please enter an integer.")
except AssertionError:
print("Please enter an integer between 1 and 20")
else:
break
感谢您的意见和帮助。提前致谢。
【问题讨论】:
标签: python python-3.x