这个脚本展示了如何生成随机数列表,使用 Counter 进行频率统计,以及如何计算统计信息(如总和、平均值、最小值、最大值和排序)。
import random
from collections import Counter
# 生成一个包含随机整数的列表
random_numbers = [random.randint(1, 10) for _ in range(20)]
# 使用 Counter 统计每个数字出现的次数
counter = Counter(random_numbers)
# 打印出现次数最多的数字及其出现次数
most_common = counter.most_common(1)[0]
print(f"Most common number: {most_common[0]}, Count: {most_common[1]}")
# 计算所有数字的总和
total_sum = sum(random_numbers)
print(f"Total sum: {total_sum}")
# 计算数字列表的平均值
average = total_sum / len(random_numbers)
print(f"Average: {average}")
# 找到列表中的最大值和最小值
min_value = min(random_numbers)
max_value = max(random_numbers)
print(f"Min: {min_value}, Max: {max_value}")
# 对列表进行排序
sorted_numbers = sorted(random_numbers)
print(f"Sorted numbers: {sorted_numbers}")
解释每一行的含义:
-
import random
: 导入 Python 的random
模块,用于生成随机数。 -
from collections import Counter
: 从 Python 的collections
模块中导入Counter
类,用于计数器对象,方便统计元素频率。 -
random_numbers = [random.randint(1, 10) for _ in range(20)]
: 使用列表推导式生成一个包含 20 个随机整数(范围在 1 到 10 之间)的列表。 -
counter = Counter(random_numbers)
: 创建一个Counter
对象counter
,统计random_numbers
列表中每个数字出现的次数。 -
most_common = counter.most_common(1)[0]
: 使用most_common
方法找出出现次数最多的元素,返回一个包含元素和次数的元组列表,这里取第一个元组。 -
print(f"Most common number: {most_common[0]}, Count: {most_common[1]}")
: 打印出现次数最多的数字和它出现的次数。 -
total_sum = sum(random_numbers)
: 计算列表random_numbers
中所有元素的总和。 -
print(f"Total sum: {total_sum}")
: 打印列表所有元素的总和。 -
average = total_sum / len(random_numbers)
: 计算列表random_numbers
的平均值。 -
print(f"Average: {average}")
: 打印列表的平均值。 -
min_value = min(random_numbers)
: 找到列表random_numbers
中的最小值。 -
max_value = max(random_numbers)
: 找到列表random_numbers
中的最大值。 -
print(f"Min: {min_value}, Max: {max_value}")
: 打印列表的最小值和最大值。 -
sorted_numbers = sorted(random_numbers)
: 对列表random_numbers
进行排序。 -
print(f"Sorted numbers: {sorted_numbers}")
: 打印排序后的列表。