用python编写一个程序来读入不指定个数的整数,然后统计读取的整数中有多少个正数和多少个负数并计算这些输入值的平均值。
时间: 2024-10-25 22:10:27 浏览: 59
py代码-例2-1-4 输入两个整数,输出较大的一个
你可以使用Python的`sys.stdin`来实现这个需求,它允许你从标准输入(比如命令行)读取无限数量的数据。下面是一个简单的程序示例:
```python
import sys
def read_integers():
positive_count = 0
negative_count = 0
total_sum = 0
num_of_input = 0
for line in sys.stdin:
# 假设每一行只包含一个整数
number = int(line.strip())
num_of_input += 1
if number > 0:
positive_count += 1
total_sum += number
elif number < 0:
negative_count += 1
total_sum -= number # 正负数相加会相互抵消
if num_of_input > 0:
average_value = total_sum / num_of_input
else:
average_value = None # 如果没输入任何数值,则平均值为空
return positive_count, negative_count, average_value
positive, negative, average = read_integers()
print(f"Positive numbers: {positive}")
print(f"Negative numbers: {negative}")
if average is not None:
print(f"Average value: {average}")
```
在这个程序中,用户可以在命令行输入一系列整数,每行一个,程序会逐行读取并统计正数、负数的数量以及所有数字的总和,最后计算平均值。
阅读全文