Search code examples
pythonlistmultiplicationscalarelementwise-operations

How to multiply all integers inside list


Hello so I want to multiply the integers inside a list.

For example;

l = [1, 2, 3]
l = [1*2, 2*2, 3*2]

output:

l = [2, 4, 6]

So I was searching online and most of the answers were regarding multiply all the integers with each other such as:

[1*2*3]


Solution

  • Try a list comprehension:

    l = [x * 2 for x in l]
    

    This goes through l, multiplying each element by two.

    Of course, there's more than one way to do it. If you're into lambda functions and map, you can even do

    l = map(lambda x: x * 2, l)
    

    to apply the function lambda x: x * 2 to each element in l. This is equivalent to:

    def timesTwo(x):
        return x * 2
    
    l = map(timesTwo, l)
    

    Note that map() returns a map object, not a list, so if you really need a list afterwards you can use the list() function afterwards, for instance:

    l = list(map(timesTwo, l))
    

    Thanks to Minyc510 in the comments for this clarification.