用户输入格式正确

时间:2019-07-18 21:28:55

标签: python user-input

我正在尝试确保用户输入正确的酒店号码。输入的格式应为2个大写字母,后跟一个整数。如果输入的格式错误,我希望我的代码提供一条错误消息,并重新提示用户输入酒店号码。

酒店=输入(“请输入酒店编号:”)

1 个答案:

答案 0 :(得分:1)

这可以用正则表达式来完成。该语句将为^[A-Z]{2}[0-9]$

说明:

^-字符串的开头
[A-Z]-任何大写字母
{2}-前两个
[0-9]-任意一位数字
$字符串结尾

您的代码:

import re

rule = "^[A-Z]{2}[0-9]$"

x = None
hotel = None
while x == None:
    hotel = input("Please enter the hotel number: ")
    x = re.search(rule, hotel)
    if x == None:
        print("Error! Bad hotel number!")