我正在尝试编写一个python脚本,实现以下功能:
最后,再次提示用户输入用户名或按enter键退出
import re, sys
username = ""
username = input('Enter Username (Press ENTER to exit): ')
while username != "":
quantity = input('Enter Quantity: ')
if re.match("[a-zA-Z]{5,10}$", username) and re.match("[0-9]{1,2}$", quantity) and type(quantity) is int and quantity > 0:
print('Username: ', username, "\n" 'Quantity: ', quantity)
else:
print('Error: Enter a username consisting of 5-10 alphabetical letters and a valid integer between 1 and 100')
username = input('Enter Username (Press ENTER to exit): ')
我如何达到这些要求?当我运行我的程序,我总是打印错误信息,不能正确打印用户名和数量。 谢谢你抽出时间,我很感激你能给我的任何帮助
如果您在理解复杂情况时遇到困难,请分别测试每个组件。在您的例子中,
type(quantity)
将不是int
它将是str
,这也意味着quantity > 0
将引发TypeError
(您无法到达那里,因为type
测试使条件短路)稍微好一点的条件是:
这很难说是Python,但它能完成任务
相关问题 更多 >
编程相关推荐