Умножение матриц Python строка на строку с примером кода - PullRequest
1 голос
/ 21 октября 2019

Если у меня есть код для добавления матрицы;

def VectorAddition (a,b):
    c=[]
    if (len(a)!=len(b)):
        return c
    for i in range(0,len(a)):
        c.append(a[i]+b[i])
    return c

def MatrixAddition (A,B):
    c=[]
    for i in range(len(A)):
        c.append(VectorAddition(A[i],B[i]))
    return c

Как мне написать такой код для умножения первой умножения строки на строку как «VectorMultiplication», после добавления строк, созданных в матрицу как »MatrixMultiplication "?

Не могли бы вы помочь мне об этом?

Ответы [ 2 ]

0 голосов
/ 21 октября 2019

Если я правильно понимаю ваше требование, вы можете просто изменить оператор + на *:

def VectorMultiplication (a,b):
    c = []
    if (len(a)!=len(b)):
        return c
    for i in range(0,len(a)):
        c.append(a[i]*b[i])
    return sum(c)

def MatrixMultiplicaion (A,B):
    c=[]
    for i in range(len(A)):
        c.append(VectorMultiplication(A[i],B[i]))
    return c
0 голосов
/ 21 октября 2019

Писать функцию или метод умножения матриц нетривиально, я рекомендую определить класс матриц, а затем применить желаемую логику. Я решил проблему следующим образом.

Проверьте код square_matrix_class.py

...