此範例用來學習Numpy矩陣相乘和python中讀寫檔案的方法,
完整程式碼如下:
完整程式碼如下:
import numpy as np
#讀檔
f=open('Ans.txt','w')
#將矩陣檔案load到np裡面
a=np.loadtxt("matrixA.txt", delimiter = ",", dtype=int)
b=np.loadtxt("matrixB.txt", delimiter = ",", dtype=int)
#矩陣相乘
c=np.dot(a, b)
#寫入檔案
for i in c:
f.write(str(i) + "\n")
f.close()
#讀檔
f=open('Ans.txt','w')
#將矩陣檔案load到np裡面
a=np.loadtxt("matrixA.txt", delimiter = ",", dtype=int)
b=np.loadtxt("matrixB.txt", delimiter = ",", dtype=int)
#矩陣相乘
c=np.dot(a, b)
#寫入檔案
for i in c:
f.write(str(i) + "\n")
f.close()
-----------------------------------------------------------------------------------------------------------------
解說:
Step 1:
首先呢我們先import numpy as np 並創立一個txt檔案叫做Ans.txt(此檔案放在要執行python底下的目錄即可),
之後用它來寫入矩陣相乘之後的結果。
Step 2:
之後我們會用到 Numpy中的 np.loadtxt 這個函式用它來讀入txt檔案中的矩陣,
Step 3:
再來就是用到Numpy中的np.dot()函式啦!
它是用來做矩陣相乘運算,哈哈很好用吧一行就解決!
不像C還要寫好幾行...
將運算好的結果存放到c變數裡,
此時你就可以看出相乘後的結果囉。
Step 4:
運算完後我們可以把結果寫入Ans.txt中,
這邊要注意的是f.wirte(str)裡面必須要是字串格式,
因此我們將整數轉為字串即可,
之後就大功告成!!!
Note:
至於matrixtA.txt和matrixB.txt及解答我把它放在
https://drive.google.com/drive/folders/0B-FUdgUZWxeMbTd1MlZ4WGhpUXM
Reference:
[1] Numpy,http://www.numpy.org/
如有疑問歡迎在下方留言告訴我唷~~~