在python3.3中,如何将一个2D数组的行与另一个2D数组的列相乘?

2024-04-26 14:14:44 发布

您现在位置:Python中文网/ 问答频道 /正文

NO_OF_ROWS_A=int(input("Enter the no. of rows in A: "))
NO_OF_COLUMNS_A=int(input("Enter the no. of columns in A: "))

NO_OF_ROWS_B=int(input("Enter the no. of rows in B : "))
NO_OF_COLUMNS_B=int(input("Enter the no. of columns in B: "))

mat_A=[[] for i in range(NO_OF_ROWS_A)]
for i in range(NO_OF_ROWS_A):
    for j in range (NO_OF_COLUMNS_A):
        print("Enter",i,j,"element for mat A: ")
        a=int(input())
        mat_A[i].append(a)

mat_B=[[] for i in range(NO_OF_ROWS_B)]
for i in range(NO_OF_ROWS_B):
    for j in range (NO_OF_COLUMNS_B):
        print("Enter",i,j,"element for mat B: ")
        b=int(input())
        mat_B[i].append(b)

mat_B_trans=list(itertools.zip_longest(*mat_B))
#can't understand the loop also
def list_a(mat_A, i):
    return [row[i] for column in mat_A]
def list_a(mat_B_trans, i):
    return [row[i] for column in mat_B_trans]
temp=[a*b for a,b in zip(list_a,list_b)]
mat_C=[[]for i in range(NO_OF_ROWS_A)]
for i in range(NO_OF_ROWS_A):
    for i in range(NO_OF_COLUMNS_B):
        c=int(input())
        mat_C[i].append(c)

Tags: columnsofthenoinforinputrange