Python键盘输入,得到矩阵。两行元素对调

获取键盘上的输入,得到n*n的矩阵a,完成下列要求:
(1)定义一个函数,输出矩阵a
(2)定义一个函数,将第i行和第j行元素对调,并输出新的矩阵。
(3)定义一个函数,用对角线上的元素分别除以其所在行的各个元素,并输出新的矩阵。

可用如下代码试试:

import numpy as np
def create_matrix():
    n=int(input())
    a=np.mat(np.zeros((n,n)))
    for i in range(n):
        for j in range(n):
            a[i,j]=int(input())
    return a
def shift_matrix(m,i,j):
    m[[i,j], :] = m[[j,i], :]    
    print(m)
def divide_diag(m):
    for i in range(m.shape[0]):
        m[i,:]=np.diagonal(m)[i]/m[i,:]
    print(m)

a=create_matrix()
print(a)
shift_matrix(a,0,2) 
divide_diag(a)


如有帮助,请点采纳。