用python随机生成100个学生的成绩并求出平均分,最大值,最小值,中位数
时间: 2024-09-22 17:06:46 浏览: 123
在Python中,你可以使用`random`模块来生成100个随机的成绩,并利用内置函数来计算平均分、最大值、最小值以及中位数。以下是一个示例代码:
```python
import random
# 初始化列表来存储成绩
grades = []
# 循环生成100个随机成绩(假设范围在0到100之间)
for _ in range(100):
grades.append(random.randint(0, 100))
# 计算平均分
average_grade = sum(grades) / len(grades)
# 计算最大值和最小值
max_grade = max(grades)
min_grade = min(grades)
# 对成绩排序并找到中位数
grades.sort()
n = len(grades)
if n % 2 == 0: # 如果有偶数个成绩
median_grade = (grades[n // 2 - 1] + grades[n // 2]) / 2
else: # 如果有奇数个成绩
median_grade = grades[n // 2]
# 输出结果
print(f"平均分:{average_grade}")
print(f"最大值:{max_grade}")
print(f"最小值:{min_grade}")
print(f"中位数:{median_grade}")
相关问题
python求列表内数据的最大值最小值中位数平均数以及和
假设待求的列表为 `lst`,可以使用以下 Python 代码求解:
```python
# 求最大值
max_val = max(lst)
# 求最小值
min_val = min(lst)
# 求中位数
n = len(lst)
lst_sorted = sorted(lst)
if n % 2 == 0:
median = (lst_sorted[n//2 - 1] + lst_sorted[n//2]) / 2
else:
median = lst_sorted[n//2]
# 求平均数
avg_val = sum(lst) / n
# 求和
sum_val = sum(lst)
```
其中,`max()` 函数可以直接求出列表中的最大值;`min()` 函数可以直接求出列表中的最小值;中位数需要先将列表排序,再根据列表长度的奇偶性来计算;平均数直接求和除以列表长度即可;和直接使用 `sum()` 函数求解。
python求最大值最小值、平均值和中位数
Python可以使用内置函数来求最大值、最小值、平均值和中位数。
求最大值可以使用max()函数,例如:
```
a = [1, 2, 3, 4, 5]
max_value = max(a)
print(max_value) # 输出5
```
求最小值可以使用min()函数,例如:
```
a = [1, 2, 3, 4, 5]
min_value = min(a)
print(min_value) # 输出1
```
求平均值可以使用sum()函数和len()函数,例如:
```
a = [1, 2, 3, 4, 5]
avg_value = sum(a) / len(a)
print(avg_value) # 输出3.
```
求中位数可以使用statistics模块中的median()函数,例如:
```
import statistics
a = [1, 2, 3, 4, 5]
median_value = statistics.median(a)
print(median_value) # 输出3
```
需要注意的是,如果列表中有偶数个元素,中位数为中间两个数的平均值。
阅读全文