Python 处理用户输入

本文档将详细介绍如何在 Python 3 中处理用户输入。我们将涵盖从简单的文本输入到更高级主题,如错误处理和验证。本教程使用 Markdown 格式编写,并使用中文进行说明。

1. 基础:input() 函数

Python 3 提供了一个内置的 input() 函数来处理用户输入。当该函数被调用时,它会暂停程序执行并等待用户在键盘上输入一些文本。然后,它将接收到的文本作为一个字符串返回。

name = input("请输入你的名字: ")
print("你好, " + name)

在这个简单的示例中,我们首先调用 input() 函数并传递一个提示信息作为参数。然后,将返回的输入存储在 name 变量中,最后使用 print() 函数来显示问候语。

2. 高级:处理错误和验证

当涉及到用户输入时,程序可能会遇到各种问题。例如,用户可能不小心输入了无效的数据或者忘记了输入一些必需的信息。为了处理这些情况,我们可以使用异常处理和验证技术。

2.1 错误处理

Python 中的 try/except 语句允许我们捕获并处理运行时错误。当用户输入不能被程序正确地解析或转换为所需的数据类型时,就会发生这种情况。

while True:
    try:
        age = int(input("请输入你的年龄: "))
        break
    except ValueError:
        print("无效的输入!请重试。")

在此示例中,我们使用 while 循环来确保程序不会继续执行,直到它收到有效的年龄为止。如果 int() 函数引发 ValueError 异常(因为输入无法转换为整数),则会显示错误消息并重新提示用户。

2.2 验证

除了处理错误之外,还可以通过验证来确保用户输入的数据满足某些条件。例如,我们可能希望确保年龄在特定范围内或密码至少包含一个大写字母和一个数字。

while True:
    password = input("请输入你的密码: ")
    if len(password) >= 8 and any(char.isupper() for char in password) and any(char.isdigit() for char in password):
        break
    else:
        print("无效的密码!密码必须至少包含 8 个字符,其中包括一个大写字母和一个数字。")

在此示例中,我们使用 len()isupper()isdigit() 函数来验证密码是否满足要求。如果未满足要求,则会显示错误消息并重新提示用户。

3. 结论

在 Python 中处理用户输入相对简单,但也有一些挑战需要考虑。通过使用内置的 input() 函数、异常处理和验证技术,我们可以创建强大且可靠的程序来接收并处理用户输入。