如何用Python编写代码读取多行数字并返回它们的总和?
Python 实现多行数字输入求和
实现方案
这里提供两种简洁的实现方式,均能读取多行输入的数字并计算总和:
方式一:利用 sys.stdin 快速处理所有行
这种方式代码简洁高效,适合一次性处理全部输入:
import sys total = sum(int(line.strip()) for line in sys.stdin if line.strip().isdigit()) print(total)
- 逻辑说明:通过
sys.stdin读取所有输入行,自动过滤空行与非数字行,将有效行转为整数后直接求和。
方式二:逐行循环读取(新手友好)
如果需要更直观的逐行处理逻辑,可以用循环实现:
total = 0 while True: try: line = input().strip() if not line: continue # 跳过空行 num = int(line) total += num except EOFError: break # 输入结束时退出循环 print(total)
- 逻辑说明:循环读取每行输入,跳过空行后将有效数字累加到总和,直到用户结束输入(按下
Ctrl+D或Ctrl+Z)。
测试验证
- 示例输入1:
1
1
0
3
1
0
运行代码后输出:6
- 测试输入2:
3
3
6
4
5
9
运行代码后输出:30
内容的提问来源于stack exchange,提问作者suzaneh sehati
相关产品推荐
相关产品推荐

