# Python – Constant Multiplication over List

• Last Updated : 20 Mar, 2023

While working with the python lists, we can come over a situation in which we require to multiply constant to each element in the list. We possibly need to iterate and multiply constant to each element but that would increase the line of code. Letâ€™s discuss certain shorthands to perform this task.

Method #1 : Using List Comprehension
List comprehension is just the short way to perform the task we perform using the naive method. This is mainly useful to save time and also is best among others when it comes to the readability of the code.

## Python3

 # Python3 code to demonstrate# Constant Multiplication over List# using list comprehension # initializing listtest_list = [4, 5, 6, 3, 9] # printing original listprint ("The original list is : " + str(test_list)) # initializing KK = 4 # using list comprehension# Constant Multiplication over Listres = [x * K for x in test_list] # printing resultprint ("The list after constant multiplication : " + str(res))

Output

The original list is : [4, 5, 6, 3, 9]
The list after constant multiplication : [16, 20, 24, 12, 36]

Time Complexity: O(n), The above code iterates through the list once, hence the time complexity is linear, i.e. O(n).
Auxiliary Space: O(n), The algorithm uses an additional list to store the result, thus consuming linear space which is O(n).

Method #2 : Using map() + operator.mul
This is similar to the above function but uses the operator.mul to multiply each element to other element from the other list of K formed before applying the map function. It multiplies the similar index elements of list.

## Python3

 # Python3 code to demonstrate# Constant Multiplication over List# using map() + operator.mulimport operator # initializing listtest_list = [4, 5, 6, 3, 9] # printing original listprint ("The original list is : " + str(test_list)) # initializing K listK_list = [4] * len(test_list) # using map() + operator.mul# Constant Multiplication over Listres = list(map(operator.mul, test_list, K_list)) # printing resultprint ("The list after constant multiplication : " + str(res))

Output

The original list is : [4, 5, 6, 3, 9]
The list after constant multiplication : [16, 20, 24, 12, 36]

Method #3 : Using numpy

## Note: Install numpy module using command “pip install numpy”

Another approach to perform constant multiplication over a list is by using numpy library.

## Python3

 import numpy as np # Python program to perform constant multiplication over a list test_list = [4, 5, 6, 3, 9]K = 4 # Using numpyresult = list(np.array(test_list) * K) # printing resultprint("The list after constant multiplication :", result)#This code is contributed by Edula Vinay Kumar Reddy

Output:

The list after constant multiplication : [16, 20, 24, 12, 36]

Time complexity: O(n) as it is iterating through the list once.
Auxiliary Space: O(n) as it is creating a new list with multiplied values.

My Personal Notes arrow_drop_up