Python如何实现同一行输入多个数字并执行加法等运算
实现方法
完全可以实现,核心逻辑是对input()返回的整行字符串做分割处理:input()默认会读取用户输入的一整行内容,返回完整字符串,你可以调用split()方法按空格将其拆分为多个子串,再批量转换为数值类型,就能单次获取多个输入值。
适配你需求的面积计算代码示例
# 分割输入后批量转float,分别赋值给长、宽变量 length, width = map(float, input("Enter length and width: ").split()) area = length * width # 对整数结果做格式化优化,避免输出50.0这类带小数点的内容 print(f"The area is {int(area) if area.is_integer() else area} sq units")
运行效果完全符合你的预期:
Enter length and width: 5 10
The area is 50 sq units
常见扩展用法
- 接收任意多个数字做求和运算:
# 所有输入的数字会存入列表,可直接用sum方法求和 num_list = list(map(int, input("请输入任意个用空格分隔的数字:").split())) print("求和结果为:", sum(num_list))
- 自定义分隔符:如果需要用逗号、竖线等符号分隔输入,给
split()传入对应参数即可,比如按逗号分隔就写split(',') - 增加格式校验,避免用户输入错误导致程序崩溃:
try: length, width = map(float, input("Enter length and width: ").split()) area = length * width print(f"The area is {int(area) if area.is_integer() else area} sq units") except ValueError: print("输入格式错误,请输入两个用空格分隔的有效数字")
内容的提问来源于stack exchange,提问作者Mikaela Nera
相关产品推荐
相关产品推荐

