【问题描述】从arrfile.txt文件读入矩阵元素,矩阵行列为n2n形式(n>=2), 将其拆分成两个nn的子矩阵,计算两个子矩阵的乘积,结果写入result.txt文件。
【输入形式】逗号分隔的文本文件arrfile.txt
【输出形式】逗号分隔的文本文件result.txt
我们需要用到矩阵按行的拆分函数:np.hsplit(X,N),N为按行拆分对等的子矩阵的数量,使用savetxt和loadtxt读写,且使用分割符即可实现如上图,注意,array_split为数量上的对等拆分
import numpy as np
if __name__ == '__main__':
np.savetxt('result.txt',[y[0].dot(y[1]) for y in [list(np.hsplit(np.loadtxt('a.txt', dtype=int, delimiter=','), 2))]][0],fmt='%s',delimiter=',')
做笔记罢了,仅供参考。。。使用高效的方法也一样