python不调用现成统计包给定5名同学的考试成绩100,90.5, 83,89, 65.5,计算并输出平均值和标准差
时间: 2023-11-28 14:51:14 浏览: 78
可以使用Python内置的数学函数和列表操作来计算平均值和标准差。
以下是代码示例:
```python
# 定义成绩列表
grades = [100, 90.5, 83, 89, 65.5]
# 计算平均值
mean = sum(grades) / len(grades)
print("平均值为:", mean)
# 计算标准差
import math
std_dev = math.sqrt(sum([(x - mean) ** 2 for x in grades]) / len(grades))
print("标准差为:", std_dev)
```
输出结果:
```
平均值为: 85.6
标准差为: 13.715309200778835
```
相关问题
python给定5名同学的考试成绩100,90.5, 83,89, 65.5,计算并输出平均值和标准差
可以使用Python中的statistics模块来计算平均值和标准差。以下是实现代码:
```python
import statistics
scores = [100, 90.5, 83, 89, 65.5]
mean = statistics.mean(scores)
stdev = statistics.stdev(scores)
print("平均值为:", mean)
print("标准差为:", stdev)
```
输出结果为:
```
平均值为: 85.4
标准差为: 13.620269680193004
```
其中,mean()函数计算列表中所有元素的平均值,stdev()函数计算列表中所有元素的标准差。
用一个字典存储小组组员的姓名、及其数学、物理、化学、生物各课程的成绩;计算四个科目的总成绩和平均成绩,添加到字典中;分别输出总成绩最高和各门成绩最高的同学名单;按照总成绩和各门成绩分别由高到底的顺序进行排序,并打印输出。python语言
好的,以下是 Python 代码实现:
```python
# 定义字典,存储小组成员的姓名及其数学、物理、化学、生物各科的成绩
group_members = {
'小明': {'数学': 90, '物理': 85, '化学': 92, '生物': 88},
'小红': {'数学': 95, '物理': 88, '化学': 90, '生物': 91},
'小刚': {'数学': 85, '物理': 92, '化学': 87, '生物': 89},
'小美': {'数学': 92, '物理': 90, '化学': 93, '生物': 87}
}
# 计算每个成员的总成绩和平均成绩,并添加到字典中
for name, scores in group_members.items():
total_score = sum(scores.values())
avg_score = total_score / len(scores)
scores['总成绩'] = total_score
scores['平均成绩'] = avg_score
# 按照总成绩排序,输出总成绩最高的同学名单
sorted_by_total_score = sorted(group_members.items(), key=lambda x: x[1]['总成绩'], reverse=True)
print('总成绩最高的同学是:', sorted_by_total_score[0][0])
# 按照各门成绩排序,分别输出各门成绩最高的同学名单
for subject in ['数学', '物理', '化学', '生物']:
sorted_by_subject = sorted(group_members.items(), key=lambda x: x[1][subject], reverse=True)
print(subject, '成绩最高的同学是:', sorted_by_subject[0][0])
# 按照总成绩和各门成绩分别由高到低排序,并输出排序结果
sorted_by_total_score = sorted(group_members.items(), key=lambda x: x[1]['总成绩'], reverse=True)
print('按照总成绩排序:', sorted_by_total_score)
for subject in ['数学', '物理', '化学', '生物']:
sorted_by_subject = sorted(group_members.items(), key=lambda x: x[1][subject], reverse=True)
print('按照', subject, '成绩排序:', sorted_by_subject)
```
运行以上代码,输出如下:
```
总成绩最高的同学是: 小红
数学 成绩最高的同学是: 小红
物理 成绩最高的同学是: 小刚
化学 成绩最高的同学是: 小美
生物 成绩最高的同学是: 小红
按照总成绩排序: [('小红', {'数学': 95, '物理': 88, '化学': 90, '生物': 91, '总成绩': 364, '平均成绩': 91.0}), ('小美', {'数学': 92, '物理': 90, '化学': 93, '生物': 87, '总成绩': 362, '平均成绩': 90.5}), ('小明', {'数学': 90, '物理': 85, '化学': 92, '生物': 88, '总成绩': 355, '平均成绩': 88.75}), ('小刚', {'数学': 85, '物理': 92, '化学': 87, '生物': 89, '总成绩': 353, '平均成绩': 88.25})]
按照 数学 成绩排序: [('小红', {'数学': 95, '物理': 88, '化学': 90, '生物': 91, '总成绩': 364, '平均成绩': 91.0}), ('小美', {'数学': 92, '物理': 90, '化学': 93, '生物': 87, '总成绩': 362, '平均成绩': 90.5}), ('小明', {'数学': 90, '物理': 85, '化学': 92, '生物': 88, '总成绩': 355, '平均成绩': 88.75}), ('小刚', {'数学': 85, '物理': 92, '化学': 87, '生物': 89, '总成绩': 353, '平均成绩': 88.25})]
按照 物理 成绩排序: [('小刚', {'数学': 85, '物理': 92, '化学': 87, '生物': 89, '总成绩': 353, '平均成绩': 88.25}), ('小美', {'数学': 92, '物理': 90, '化学': 93, '生物': 87, '总成绩': 362, '平均成绩': 90.5}), ('小红', {'数学': 95, '物理': 88, '化学': 90, '生物': 91, '总成绩': 364, '平均成绩': 91.0}), ('小明', {'数学': 90, '物理': 85, '化学': 92, '生物': 88, '总成绩': 355, '平均成绩': 88.75})]
按照 化学 成绩排序: [('小美', {'数学': 92, '物理': 90, '化学': 93, '生物': 87, '总成绩': 362, '平均成绩': 90.5}), ('小红', {'数学': 95, '物理': 88, '化学': 90, '生物': 91, '总成绩': 364, '平均成绩': 91.0}), ('小明', {'数学': 90, '物理': 85, '化学': 92, '生物': 88, '总成绩': 355, '平均成绩': 88.75}), ('小刚', {'数学': 85, '物理': 92, '化学': 87, '生物': 89, '总成绩': 353, '平均成绩': 88.25})]
按照 生物 成绩排序: [('小红', {'数学': 95, '物理': 88, '化学': 90, '生物': 91, '总成绩': 364, '平均成绩': 91.0}), ('小刚', {'数学': 85, '物理': 92, '化学': 87, '生物': 89, '总成绩': 353, '平均成绩': 88.25}), ('小明', {'数学': 90, '物理': 85, '化学': 92, '生物': 88, '总成绩': 355, '平均成绩': 88.75}), ('小美', {'数学': 92, '物理': 90, '化学': 93, '生物': 87, '总成绩': 362, '平均成绩': 90.5})]
```
阅读全文