我是初学者,需要一些帮助。如何确保用户输入只有3位数。我知道如何确定它是否是数字但需要它只有3.这就是我到目前为止所拥有的:
while not (area_code.isdigit()):
# do something here
我想" .isdigit()"是3位数。
答案 0 :(得分:3)
您还需要明确测试字符串的长度:
while not (area_code.isdigit() and len(area_code) == 3):
str.isdigit()
仅在至少有一个字符且所有字符均为数字时才为真。剩下的就是对长度的测试。
答案 1 :(得分:2)
while True:
inp = raw_input()
if len(inp) == 3 and inp.isdigit():
break
如果要进行多次输入,则需要在循环内部输入
使用您的示例:
area_code = raw_input()
while len(area_code) != 3 or not area_code.isdigit():
area_code = raw_input()
答案 2 :(得分:0)
while not len(area_code) == 3:
# Do stuff