我想在两种情况下限制用户输入:
1.用字符串和分割,当要求用户输入两个2位数字时,我写道:
x=raw_input("words").split()
我想只允许他写一个两个2位数的输入,如果他做了其他的事情,我想弹出一个错误,然后再次提示他,直到做完为止。
2.这次是询问用户随机4位数时的INT:
y=int(raw_input("words"))
我只想允许(例如)4位数字,如果他输入53934
例如我希望能够写错误解释他必须只输入4位数字,然后循环它回到他做对了。
更新
所以 - 试图开始简单我决定,起初只是试图要求用户输入8个字母。例如,qwertyui
输入是可以接受的,但sadiuso
(7个字符)不是。
所以我尝试使用你给我的语法并写道:
y=raw_input("words") if not (len(y) == 8):
pop an error
但是我在:
答案 0 :(得分:2)
>>> '12345'.isdigit()
True
>>> 'ab12'.isdigit()
False
>>> len('12')
2
while True:
x = raw_input('Input 2 digits: ')
if x.isdigit() and len(x) == 2:
x = int(x)
break
print('input should be 2 digits.')
print('x = {}'.format(x))