Search code examples
pythonmatrixmatrix-multiplicationscalar

Python - Turning a for-loop into a one-liner


I'm trying to create a matrix-multiplication-with-scalar function, without any libraries. It has to include list comprehension:

A = [[1,2],[3,4]] # 2by2 matrix

scalar = 2 #positive int

product = []

for row in A:
    
    temp = []
    
    for element in row:
        temp.append(scalar * element)
    
    product.append(temp)

print(product)

Solution

  • This is a possible solution:

    A = [[1,2],[3,4]] # 2by2 matrix
    
    scalar = 2 #positive int
    
    product = [[i*scalar for i in sublist] for sublist in A]
    
    print(product)