python numpy 矩阵编程练习 求矩阵每列的最大值

Python Numpy 矩阵编程练习 求矩阵每列的最大值

编写程序实现:用3*5的整型矩阵a接收标准输入的数据,计算数组a的每列元素的最大值,并将第i列最大值存入max相应的第i个元素。

输入格式:
标准输入的每一行表示矩阵a中的一行数据,以空格作为间隔。

输出格式:
标准输出的一行表示max中的元素,用空格作为间隔;

输入样例:
在这里给出一组输入。例如:

1 2 3 4 5
6 7 8 9 0
3 5 7 9 1
输出样例:
在这里给出相应的输出。例如:

6 7 8 9 5

第一步 关于输入

m = []#创建一个矩阵
for r in range(3):#循环三次,每次读入一行
    row = []#用来存储一行
    line = input()#读入一行的值
    a = line.split()#将一行的值分成一个一个的

    for s in a:
        t = int(s)
        row.append(t)
    m.append(row)

第二步 求列最大值

这里补充一点点求各种最大值的方法

import numpy as np

exemple=np.arange(9).reshape((3,3))
print(exemple)
#输出
#[[0 1 2]
# [3 4 5]
# [6 7 8]]

#全矩阵最大值  8
print(exemple.max())
#等价于:
#print(np.max(exemple))

#列最大值   输出:[6 7 8]
print(np.max(exemple,axis=0))
#行最大值   输出:[2 5 8]
print(np.max(exemple,axis=1))

#全矩阵最大值 索引
print(np.where(exemple==exemple.max()))

最终代码

import numpy as np
m = []#创建一个矩阵
for r in range(3):#循环三次,每次读入一行
    row = []#用来存储一行
    line = input()#读入一行的值
    a = line.split()#将一行的值分成一个一个的

    for s in a:
        t = int(s)
        row.append(t)
    m.append(row)

#求每一列的最大值
d = np.max(m,axis = 0)

#打印出每一列的最大值
for n in d:
    print(n,end=' ')

搞定!

你可能感兴趣的:(python,numpy,python,numpy)