python基础题(选择排序、二维列表)如何做,急求

1.编写程序,随机产生30个1-100之间的随机整数并存入5行6列的二维列表中,按5行6列的格式输出该列表,统计并输出该列表的最大值、最小值、平均值及大于平均值个数、小于平均值个数。(这一个的话我已经弄出了这个二维列表,但是不知道怎么求平均值和大于平均值个数、小于平均值个数)
2.编写程序,使用选择排序法对已知列表{2,34,7,-1,-100,15,89}进行升序排序并输出。
如果要求每一次扫描的结果是把最大的元素放在未排序元素的最后位置,程序应该是怎么样的?


from random import sample
data=sample(range(1,101),30)
arr=[data[x:x+6] for x in range(0,len(data),6)]
print('转变为5*6的二维列表',arr,'\n')
print('该二维列表每行最大值:',list(map(max,arr)),'\n')
print('该二维列表每行最小值:',list(map(min,arr)),'\n')
print('该二维列表每行平均值:',list(map(lambda x:sum(x)/len(x),arr)),'\n')
print('大于平均值个数:',list(map(lambda x:len([y for y in x if y>sum(x)/len(x)]),arr)),'\n')
print('小于平均值个数:',list(map(lambda x:len([y for y in x if y<sum(x)/len(x)]),arr)))

温馨提示:答案为网友推荐,仅供参考