用Python写一个多输入数字求和。获取用户输入一批数字,每个数字一行,即输入一个数字之后回车在下一行输入下一个数字,最后以空回车为结束(即空串输入)。计算这批数字的和。 例如:依次输入5、2、-1、3.5后,直接回车,输出9.5。
时间: 2024-10-23 08:04:28 浏览: 27
在Python中,你可以使用`input()`函数结合循环结构来实现这个功能。这里是一个简单的示例程序:
```python
def sum_numbers():
total = 0
while True:
num_str = input("请输入一个数字(输入空行结束):")
if num_str.strip() == '': # 如果输入的是空行,表示结束
break
else:
try:
num = float(num_str) # 尝试将输入转换为浮点数
total += num
except ValueError:
print("无效的输入,请输入数字。")
print(f"所有数字的和是:{total}")
sum_numbers()
```
在这个程序中,我们首先初始化总和`total`为0。然后在一个无限循环中,持续询问用户的输入。如果输入的不是一个空字符串(即非空行),则尝试将其转换为浮点数并累加到总和中。如果输入无法转换成浮点数(比如用户输入了字母或符号),我们会捕获`ValueError`异常,并提示用户输入数字。当用户输入空行时,跳出循环并打印出最终的和。
阅读全文