Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะคูณเมทริกซ์สองตัวโดยใช้ Python ได้อย่างไร


การคูณของเมทริกซ์สองตัวจะทำได้ก็ต่อเมื่อจำนวนคอลัมน์ในเมทริกซ์แรกเท่ากับจำนวนแถวในเมทริกซ์ที่สอง

การคูณสามารถทำได้โดยใช้การวนซ้ำซ้อน โปรแกรมต่อไปนี้มีสองเมทริกซ์ x และ y แต่ละอันมี 3 แถวและ 3 คอลัมน์ เมทริกซ์ z ที่เป็นผลลัพธ์จะมีโครงสร้าง 3X3 ด้วย องค์ประกอบของแต่ละแถวของเมทริกซ์แรกจะถูกคูณด้วยองค์ประกอบที่สอดคล้องกันในคอลัมน์ของเมทริกซ์ที่สอง

ตัวอย่าง

X = [[1,2,3],  
       [4,5,6],  
       [7,8,9]]  
 
Y = [[10,11,12],  
      [13,14,15],  
      [16,17,18]]  
 
result = [[0,0,0],  
               [0,0,0],  
              [0,0,0]]  
 
# iterate through rows of X  
for i in range(len(X)):  
   for j in range(len(Y[0])):  
       for k in range(len(Y)):  
           result[i][j] += X[i][k] * Y[k][j]  
for r in result:  
   print(r)  

ผลลัพธ์

The result:
[84, 90, 96]
[201, 216, 231]
[318, 342, 366]