📅  最后修改于: 2023-12-03 15:24:20.205000             🧑  作者: Mango
在 Python 中获取用户输入是很常见的任务。本文将介绍几种方法来获取用户输入。
Python 内置的 input()
函数可以用来获取用户的输入,它会阻塞程序的执行,直到用户输入完成并按下回车键。
user_input = input("请输入您的名称: ")
print("您输入的名称是:" + user_input)
代码执行后,屏幕上将提示用户输入名称,用户输入完成后按下回车键,程序将把用户输入的值赋给变量 user_input
。然后,程序会输出用户输入的值。
有时候需要从用户输入中获取数字,此时需要把输入值转换为相应的数据类型。
user_input = input("请输入年龄: ")
age = int(user_input)
print("您的年龄是:" + str(age))
user_input = input("请输入体重: ")
weight = float(user_input)
print("您的体重是:" + str(weight))
代码中,用户输入的值首先被赋给变量 user_input
,然后使用 int()
或 float()
方法将输入转换为整数或浮点数,并将其赋给变量 age
和 weight
。最后,程序把转换后的值输出。
有时候需要一次性获取多个输入值。可以使用 input()
函数来逐个输入,也可以使用 split()
方法一次性获取多个值。
# 逐个输入
name = input("请输入您的姓名: ")
age = input("请输入您的年龄: ")
weight = input("请输入您的体重: ")
print("您的个人资料:\n姓名:" + name + "\n年龄:" + age + "\n体重:" + weight)
# 一次性获取(输入时用空格分隔)
name, age, weight = input("请输入您的姓名、年龄、体重(以空格分隔): ").split()
print("您的个人资料:\n姓名:" + name + "\n年龄:" + age + "\n体重:" + weight)
第一个例子中,使用 input()
函数逐个获取用户输入,并将每个值赋给相应的变量。第二个例子中,用户将所有值用空格分隔,然后使用 split()
方法获取值列表,并将其赋给相应的变量。
有时候需要获取多行文本或多个输入值。可以使用 input()
函数循环获取每行文本,也可以使用 sys.stdin.readlines()
获取多行文本。
# 循环获取每行文本
text = ""
print("请输入多行文本(以 EOF 结束):")
while True:
try:
line = input()
except EOFError:
break
text += line + "\n"
print("您输入的文本是:\n" + text)
# 获取多行文本
import sys
text = sys.stdin.readlines()
print("您输入的文本是:\n" + "".join(text))
第一个例子中,使用 while
循环和 input()
函数逐行获取用户输入,并将所有行拼接为一个字符串。用户可以在输入时使用 Ctrl + D
或 Ctrl + Z
结束输入。在第二个例子中,使用 sys.stdin.readlines()
获取用户输入的所有行,并将其拼接为一个字符串。
这就是在 Python 中获取用户输入的一些方法。使用 input()
函数可以获取单行输入值,用 split()
方法可以获取多个输入值,使用 sys.stdin.readlines()
可以获取多行输入值。