在 Python 中验证用户输入
要验证用户输入:
- 使用 while 循环进行迭代,直到提供的输入值有效。
- 检查输入值在每次迭代中是否有效。
- 如果该值有效,则跳出 while 循环。
# ✅ 验证用户输入的是否是整数
num = 0
while True:
try:
num = int(input("Enter an integer 1-10: "))
except ValueError:
print("Please enter a valid integer 1-10")
continue
if num >= 1 and num <= 10:
print(f'You entered: {num}')
break
else:
print('The integer must be in the range 1-10')
# ----------------------------------------------
# ✅ 验证用户输入的是否是字符串
password = ''
while True:
password = input('Enter your password: ')
if len(password) < 5:
print('Password too short')
continue
else:
print(f'You entered {password}')
break
print(password)
第一个示例在 while 循环中验证数字用户输入。
如果 try
块成功完成,则用户输入一个整数。
num = 0
while True:
try:
num = int(input("Enter an integer 1-10: "))
except ValueError:
print("Please enter a valid integer 1-10")
continue
if num >= 1 and num <= 10:
print(f'You entered: {num}')
break
else:
print('The integer must be in the range 1-10')
if 语句检查整数是否在 1-10 范围内,如果满足条件,我们就跳出 while 循环。
break 语句跳出最里面的 for 或 while 循环。
如果整数不在指定范围内,则 else 块运行并打印一条消息。
如果用户没有输入整数,则运行 except
块,我们使用 continue
语句再次提示用户。
continue
语句继续循环的下一次迭代。
在 while 循环中验证用户输入时,我们在输入无效时使用 continue 语句,例如在 except 块或 if 语句中。 如果输入有效,我们使用 break 语句退出 while 循环。
输入函数接受一个可选的提示参数并将其写入标准输出,而没有尾随的换行符。
然后该函数从输入中读取该行,将其转换为字符串并返回结果。
注意
,即使用户输入数字,input()
函数也始终保证返回字符串。
我们可以在验证用户输入字符串时使用相同的方法。
这是一个提示用户输入的示例,直到他们输入至少 5 个字符长的值。
password = ''
while True:
password = input('Enter your password: ')
if len(password) < 5:
print('Password too short')
continue
else:
print(f'You entered {password}')
break
print(password)
while 循环不断迭代,直到用户输入一个长度至少为 5 的值。
如果值太短,我们使用 continue 语句继续下一次迭代。
如果该值至少有 5 个字符长,我们使用 break 语句作为输入有效。
如果需要检查多个条件,可以使用布尔值或和和运算符。
这是一个检查输入值是否至少有 5 个字符长且不在值列表中的示例。
password = ''
common_passwords = ['abcde', 'asdfg']
while True:
password = input('Enter your password: ')
if len(password) < 5 or password in common_passwords:
print('Pick a strong password')
continue
else:
print(f'You entered {password}')
break
print(password)
if 语句检查密码是否少于 5 个字符或是否在常用密码列表中。
我们使用了布尔值或运算符,因此如果满足两个条件中的任何一个,if 块就会运行。
如果密码少于5个字符或者包含在常用密码列表中,我们继续下一次迭代,再次提示用户。
如果我们需要在验证输入时检查是否满足多个条件,请使用 and
布尔运算符。
password = ''
common_passwords = ['abcde', 'asdfg']
while True:
password = input('Enter your password: ')
if len(password) > 5 and password not in common_passwords:
print(f'You entered {password}')
break
else:
print('Pick a strong password')
continue
print(password)
我们使用了 and
布尔运算符,因此要运行 if 块,必须满足两个条件。
密码必须超过 5 个字符,并且必须不在常用密码列表中。
如果条件满足,我们使用 break 语句退出 while True 循环。
如果条件不满足,我们使用 continue
语句继续下一次迭代。
相关文章
Python for 循环中的下一项
发布时间:2023/04/26 浏览次数:179 分类:Python
-
本文讨论了 Python 中的 for 循环以及如何通过使用 for 循环和示例来跳过列表的第一个元素。
Python While 循环用户输入
发布时间:2023/04/26 浏览次数:148 分类:Python
-
我们可以在 while 循环中使用 input() 函数来输入数据,直到在 Python 中满足某个条件。
在 Python 中将整数转换为罗马数字
发布时间:2023/04/26 浏览次数:87 分类:Python
-
本篇文章将介绍在 Python 中将整数转换为罗马数字。以下是一个 Python 程序的实现,它将给定的整数转换为其等效的罗马数字。
在 Python 中将罗马数字转换为整数
发布时间:2023/04/26 浏览次数:144 分类:Python
-
本文讨论如何在 Python 中将罗马数字转换为整数。 我们将使用 Python if 语句来执行此操作。 我们还将探讨在 Python 中将罗马数字更改为整数的更多方法。
在 Python 中读取 gzip 文件
发布时间:2023/04/26 浏览次数:70 分类:Python
-
本篇文章强调了压缩文件的重要性,并演示了如何在 Python 中使用 gzip 进行压缩和解压缩。
在 Python 中锁定文件
发布时间:2023/04/26 浏览次数:141 分类:Python
-
本文解释了为什么在 Python 中锁定文件很重要。 这讨论了当两个进程在没有锁的情况下与共享资源交互时会发生什么的示例,为什么在放置锁之前知道文件状态很重要,等等
在 Python 中将 PDF 转换为文本
发布时间:2023/04/26 浏览次数:196 分类:Python
-
在本教程中,我们将学习如何使用 Python 使用 PyPDF2、Aspose 和 PDFminer 将 PDF 文档转换为文本文件。
在 Python 中创建临时文件
发布时间:2023/04/26 浏览次数:53 分类:Python
-
本文讲解了tempfile库函数的四个子函数:TemporaryFile、NamedTemporaryFile、mkstemp、TemporaryDirectory。 每个部分都提供了适当的程序,以简化对概念的理解。