Python 【问题描述】从arrfile.txt文件读入矩阵元素,矩阵行列为n*2n形式(n>=2), 将其拆分成两个n*n的子矩阵,计算两个子矩阵的乘积,结果写入result.txt文件。

【问题描述】从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=',')

做笔记罢了,仅供参考。。。使用高效的方法也一样

猜你喜欢

转载自blog.csdn.net/missionnn/article/details/120781606