# Python program for multiplying two matrices

Loops | Python Methods and Functions

Examples:

` Input: X = [[1, 7, 3], [3, 5, 6], [6, 8, 9]] Y = [[1, 1, 1 , 2], [6, 7, 3, 0], [4, 5, 9, 1]] Output: [55, 65, 49, 5] [57, 68, 72, 12] [90, 107, 111 , 21] `

Using Simple Nested Loops
In this program, we must use nested for loops to iterate over each row and each column.

` `

` # Program for multiplying two matrices using nested loops   # take a 3x3 matrix A = [[ 12 , 7 , 3 ], [ 4 , 5 , 6 ], [ 7 , 8 , 9 ]]   # take a 3x4 matrix B = [[[ 5 , 8 , 1 , 2 ], [ 6 , 7 , 3 , 0 ], [ 4 , 5 , 9 , 1 ]]   result = [[[ 0 , 0 , 0 , 0 ], [ 0 , 0 , 0 , 0 ], [ 0 , 0 , 0 , 0 ] ]   # iterate over line A for i in range ( len (A)):   # iterate over the column by B for j in range ( len (B [ 0 ])):   # iterate over lines B   for k in range ( len (B)):   result [i] [j] + = A [i] [k] * B [k] [j]   for r in result: print (r) `

Output:

` [114, 160, 60, 27] [74 , 97, 73, 14] [119, 157, 112, 23] `

Method 2: Matrix multiplication using a nested list. We are using

` # Program for multiplying two matrices using a list `

` # take a 3x3 matrix `

` A ` ` = ` ` [[` ` 12 ` `, ` ` 7 ` `, ` ` 3 ` `], `

` [` ` 4 ` `, ` ` 5 ` `, ` ` 6 ` `], `

` [` 7 `, ` ` 8 ` `, ` ` 9 ` `]] `

` # take a 3x4 matrix `

` B ` ` = ` ` [[` ` 5 ` `, ` ` 8 ` `, ` ` 1 ` `, ` ` 2 ` `], `

` [` ` 6 ` `, ` ` 7 ` ` , ` ` 3 ` `, ` ` 0 ` `], `

` ` ` [` ` 4 , 5 , 9 , 1 ]] `

`   # the result will be 3x4 result = [[ sum (a * b for a, b in zip (A_row, B_col) )  for B_col in zip ( * B)]   for A_row in A]   for r in result: print (r) `

` `

Output:

` [114, 160, 60, 27] [74, 97, 73, 14] [119, 157, 112, 23] `