Python3 input() 函数
input() 函数用于从标准输入(键盘)获取用户输入,并返回一个字符串(str)类型。
注意:
input()无论输入什么内容,返回值始终是字符串。如果需要进行数值计算,必须手动进行类型转换(如int()、float())。
函数语法
input([prompt])
参数说明:
- prompt:可选,提示用户输入的信息
实例
input() 获取用户输入,并以字符串形式返回。
input() 基本用法
>>>name = input("请输入你的名字:")
请输入你的名字:小明
>>> print("你好,", name)
你好,小明
即使输入的是数字,返回值仍然是字符串。
类型问题(常见坑)
>>>a = input("请输入数字:")
请输入数字:123
>>> type(a)
<class 'str'>
注意:直接使用 input() 获取的值不能参与数值计算。
错误示例:
>>> a = input("请输入数字:")
>>> print(a + 1)
TypeError: can only concatenate str (not "int") to str
正确写法:
>>> a = int(input("请输入数字:"))
>>> print(a + 1)
input() 接收多个值
split() 会将输入按空格拆分为字符串数组。
实例
# 输入多个值(用空格分隔)
a, b, c = input("请输入三个数字:").split()
# 转换类型
a = int(a)
b = int(b)
c = int(c)
print(a, b, c)
a, b, c = input("请输入三个数字:").split()
# 转换类型
a = int(a)
b = int(b)
c = int(c)
print(a, b, c)
使用 map() 可以一次性完成类型转换,代码更简洁。
推荐写法(进阶)
# 一步完成拆分 + 转换
a, b, c = map(int, input("请输入三个数字:").split())
print(a, b, c)
a, b, c = map(int, input("请输入三个数字:").split())
print(a, b, c)
实战:计算三角形面积
# 输入三角形三边
a, b, c = map(int, input("请输入三角形三边的长:").split())
# 计算半周长
p = (a + b + c) / 2
# 海伦公式计算面积
s = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print("三角形面积为:", format(s, '.2f'))
a, b, c = map(int, input("请输入三角形三边的长:").split())
# 计算半周长
p = (a + b + c) / 2
# 海伦公式计算面积
s = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print("三角形面积为:", format(s, '.2f'))
运行结果:
请输入三角形三边的长:3 4 5 三角形面积为: 6.00
常见用法总结
input("提示"):带提示输入input():不带提示输入int(input()):获取整数float(input()):获取浮点数input().split():获取多个字符串map(int, input().split()):获取多个整数(推荐)
Python2 与 Python3 区别
在 Python2 中:
raw_input():返回字符串input():会执行表达式(存在安全风险)
在 Python3 中:
- 仅保留
input() - 统一返回字符串,更安全、更易理解
核心总结
一句话总结:
input() = 获取输入 + 返回字符串
- 默认返回字符串
- 参与计算必须转换类型
- 多个输入推荐使用 split() + map()

Python3 内置函数