Python 的内置函数 input() 是一个用于获取用户输入的常用函数,它会暂停程序执行,等待用户在终端或命令行中输入数据,并以字符串形式返回用户输入的内容。
基本语法
input([prompt])
prompt是一个可选参数,用于显示提示信息,告知用户需要输入什么内容。如果省略该参数,则不会显示任何提示。
使用示例
-
基本用法:
name = input("请输入你的名字:") print(f"你好,{name}!")运行时会显示提示信息"请输入你的名字:",等待用户输入后,程序会打印问候语。
-
无提示信息:
age = input() print(f"你输入的年龄是:{age}") -
类型转换:
由于input()始终返回字符串,如果需要其他数据类型,必须进行显式转换:num = int(input("请输入一个数字:")) print(f"数字的平方是:{num ** 2}")
注意事项
-
输入处理:
- 用户输入的内容会包含换行符之前的全部字符
- 可以通过
.strip()方法去除首尾空白字符
-
安全性:
- 在从用户获取敏感信息时(如密码),建议使用
getpass模块 - 要对用户输入进行验证,防止恶意输入
- 在从用户获取敏感信息时(如密码),建议使用
-
异常处理:
- 当进行类型转换时,应该使用 try-except 处理可能的 ValueError
try: age = int(input("请输入年龄:")) except ValueError: print("请输入有效的数字!")
高级用法
-
多行输入:
可以通过循环获取多行输入:lines = [] while True: line = input() if line == 'quit': break lines.append(line) -
文件重定向:
在测试时,可以使用文件重定向来模拟用户输入 -
超时处理:
如果需要设置输入超时,可以使用第三方库如timeout-input
input() 函数是 Python 中实现交互式程序的基础工具,广泛应用于各种需要用户交互的场景,如命令行工具、教学示例、简单游戏等。它的简单易用性使其成为初学者最先接触的几个内置函数之一。