在 Python 中限制用户输入长度
Limit user input length in Python
限制用户输入长度:
- 使用
while
循环迭代,直到用户输入指定长度的字符串。 - 检查用户是否输入了给定长度的消息。
- 如果满足条件,则跳出循环。
main.py
while True: user_input = input('Enter 3 characters: ') if len(user_input) > 3: print('Enter a maximum of 3 characters.') continue else: print(user_input) break
我们使用while
循环进行迭代,直到用户输入最长 3 个字符的消息。
如果您需要获得正好包含 N 个字符的字符串,请检查是否相等。
main.py
while True: user_input = input('Enter 3 characters: ') if len(user_input) == 3: print(user_input) break else: print('Enter exactly 3 characters.') continue
在每次迭代中,我们检查用户是否恰好输入了 3 个字符。
如果他们这样做了,if
块就会运行,我们就会跳出while
循环。
break
语句跳出最内层的封闭或
for
循环while
。
如果他们不这样做,该
else
块将在我们打印消息的地方运行并继续循环的下一次迭代。如果您只需要允许用户输入字母,您可以使用相同的方法。
main.py
user_input = '' while True: user_input = input('Enter a maximum of 3 letters: ') if not user_input.isalpha() or len(user_input) > 3: print('Enter 3 letters.') continue else: print(user_input) break
if
如果输入消息不只包含字母或长度大于 ,则该语句运行3
。
如果满足任一条件,我们将继续下一次迭代并再次提示用户。
否则,我们打印输入字符串并跳出while
循环。
如果您需要将用户输入字符串的长度限制为正好 N 个字母,则可以使用相同的方法。
main.py
user_input = '' while True: user_input = input('Enter a maximum of 3 letters: ') if user_input.isalpha() and len(user_input) == 3: print(user_input) break else: print('Enter 3 letters.') continue
我们使用了布尔and
运算符,因此要使if
块运行,必须满足两个条件。
第一个条件检查输入字符串是否仅包含字母,第二个条件检查它的长度是否恰好为 3 个字符。
如果两个条件都满足,我们使用break
语句跳出循环。
否则,我们打印一条消息并再次提示用户。