python统计高于平均分的人数
时间: 2023-06-29 22:20:14 浏览: 154
假设你有一个包含学生成绩的列表 `scores`,你可以使用以下 Python 代码来统计高于平均分的人数:
```python
# 计算平均分
average_score = sum(scores) / len(scores)
# 统计高于平均分的人数
num_above_average = sum(score > average_score for score in scores)
print("高于平均分的人数为:", num_above_average)
```
这段代码先计算了所有学生的平均分,然后使用了 Python 的内置函数 `sum()` 和生成器表达式来统计高于平均分的人数。最后,代码打印出了结果。
相关问题
python 逐个输入全班同学成绩后统计平均分、高于平均分的人数、最高分、最低分、
好的,可以使用以下代码实现:
```python
# 输入全班同学成绩
scores = []
while True:
score = input("请输入成绩(输入 x 结束输入):")
if score == "x":
break
score = int(score)
scores.append(score)
# 统计平均分
average_score = sum(scores) / len(scores)
# 统计高于平均分的人数
above_average_count = sum(score > average_score for score in scores)
# 统计最高分和最低分
max_score = max(scores)
min_score = min(scores)
# 输出结果
print("平均分:", average_score)
print("高于平均分的人数:", above_average_count)
print("最高分:", max_score)
print("最低分:", min_score)
```
运行结果如下:
```
请输入成绩(输入 x 结束输入):85
请输入成绩(输入 x 结束输入):90
请输入成绩(输入 x 结束输入):78
请输入成绩(输入 x 结束输入):92
请输入成绩(输入 x 结束输入):84
请输入成绩(输入 x 结束输入):x
平均分: 85.8
高于平均分的人数: 3
最高分: 92
最低分: 78
```
统计高于平均分的人数 【问题描述】输入若干学生成绩,统计高于平均分的人数。输入成绩用空格分隔,用-1做为输入成绩数据的结束标志。 【输入形式】一组用空格分开的整数,用-1结束 【输出形式】高于平均分的学生人数 【样例输入】70 50 80 -1 【样例输出】2 【样例输入】80 80 80 -1 【样例输出】0 【样例输入】-1 【样例输出】0
下面是 Python 代码实现:
```python
scores = []
while True:
s = input().strip()
if s == "-1":
break
score = int(s)
scores.append(score)
if len(scores) == 0:
print("0")
else:
average_score = sum(scores) / len(scores)
num_above_average = sum(score > average_score for score in scores)
print(num_above_average)
```
这段代码首先读取输入的学生成绩,直到输入 `-1` 为止。然后,如果输入的成绩个数为 0,输出 `0`;否则,计算平均分和高于平均分的人数,并输出结果。
注意,这里假设输入的成绩都是合法的整数,如果输入的字符串不能转换为整数,程序会抛出异常。如果需要更加健壮的输入处理,可以使用 Python 内置模块 `re` 或第三方库 `pandas` 等。
阅读全文