python写代码 随机产生30个0-19之间的随机整数(利用random函数库生成)并存入列表中,计算列表中数值的平均值并输出众数的个数。
时间: 2023-05-28 14:01:04 浏览: 184
可能的实现代码如下:
```python
import random
from collections import Counter
# 生成随机整数列表
lst = [random.randint(0, 19) for i in range(30)]
# 计算平均值并输出
avg = sum(lst) / len(lst)
print("平均值为: %.2f" % avg)
# 计算众数的个数并输出
cnt = Counter(lst)
mode_count = cnt.most_common(1)[0][1]
mode_lst = [k for k, v in cnt.items() if v == mode_count]
print("众数个数为: %d,众数为:%s" % (len(mode_lst), str(mode_lst)))
```
其中,`random.randint(0, 19)`函数可以生成0-19(包含0和19)之间的随机整数,`range(30)`可以生成从0到29共30个数字,`lst = [random.randint(0, 19) for i in range(30)]`可以生成包含30个随机整数的列表。使用内置函数`sum`和`len`可以分别计算列表中的数值之和和数量,从而求取平均值。`collections.Counter`是Python内置的统计元素出现次数的类,它可以将列表中的数值计数并返回一个包含元素和出现次数的字典。使用它的`most_common`方法可以返回出现次数最多的元素和其出现次数,从而得到众数的数量,最后使用列表推导式将众数的值提取出来。
阅读全文