# Python – Product of elements using Index list

Accessing an element from its index is easier task in python, just using the [] operator in a list does the trick. But in certain situations we are presented with tasks when we have more than once indices and we need to get all the elements corresponding to those indices and then perform the multiplication. Lets discuss certain ways to achieve this task.

Method #1 : Using List comprehension + loop
This task is easy to perform with a loop, and hence shorthand for it is the first method to start with this task. Iterating over the index list to get the corresponding elements from list into new list is brute method to perform this task. The task of product is performed using loop.

 `# Python3 code to demonstrate  ` `# Product of Index values ` `# using list comprehension + loop  ` ` `  `# getting Product  ` `def` `prod(val) :  ` `    ``res ``=` `1`  `    ``for` `ele ``in` `val:  ` `        ``res ``*``=` `ele  ` `    ``return` `res   ` ` `  `# initializing lists  ` `test_list ``=` `[``9``, ``4``, ``5``, ``8``, ``10``, ``14``]  ` `index_list ``=` `[``1``, ``3``, ``4``]  ` ` `  `# printing original lists  ` `print` `(``"Original list : "` `+` `str``(test_list))  ` `print` `(``"Original index list : "` `+` `str``(index_list))  ` ` `  `# using list comprehension + loop to  ` `# Product of Index values  ` `res_list ``=` `prod([test_list[i] ``for` `i ``in` `index_list])  ` `     `  `# printing result  ` `print` `(``"Resultant list : "` `+` `str``(res_list))  `

Output :

```Original list : [9, 4, 5, 8, 10, 14]
Original index list : [1, 3, 4]
Resultant list : 320
```

Method #2 : Using `map() + __getitem__` + loop
Yet another method to achieve this particular task is to map one list with other and get items of indexes and get corresponding matched elements from the search list. This is quite quick way to perform this task. The task of product is performed using loop.

 `# Python3 code to demonstrate  ` `# Product of Index values ` `# using map() + __getitem__ + loop ` ` `  `# getting Product  ` `def` `prod(val) :  ` `    ``res ``=` `1`  `    ``for` `ele ``in` `val:  ` `        ``res ``*``=` `ele  ` `    ``return` `res   ` ` `  `# initializing lists  ` `test_list ``=` `[``9``, ``4``, ``5``, ``8``, ``10``, ``14``]  ` `index_list ``=` `[``1``, ``3``, ``4``]  ` ` `  `# printing original lists  ` `print` `(``"Original list : "` `+` `str``(test_list))  ` `print` `(``"Original index list : "` `+` `str``(index_list))  ` ` `  `# using map() + __getitem__ + loop to  ` `# Product of Index values ` `res_list ``=` `prod(``list``(``map``(test_list.__getitem__, index_list)))  ` `     `  `# printing result  ` `print` `(``"Resultant list : "` `+` `str``(res_list))  `

Output :

```Original list : [9, 4, 5, 8, 10, 14]
Original index list : [1, 3, 4]
Resultant list : 320
```

My Personal Notes arrow_drop_up Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.