Related Articles

# Python | Add list elements with a multi-list based on index

• Last Updated : 22 May, 2019

Given two lists, one is a simple list and second is a multi-list, the task is to add both lists based on index.

Example:

```Input:
List = [1, 2, 3, 4, 5, 6]
List of list = [, [0, 1, 2], [0, 1], [0, 1], [0, 1, 2], ]

Output:
[, [2, 3, 4], [3, 4], [4, 5], [5, 6, 7], ]

Explanation:
 = [1+0]
[2, 3, 4] = [0+2, 1+2, 2+2]
[3, 4] = [3+0, 3+1]
[4, 5] = [4+0, 4+1]
[5, 6, 7] = [5+0, 5+1, 5+2]
 = [6+0]
```

Let’s discuss some methods to do this task.

Method #1: Using iteration

 `# Python code to add list elements ``# with a multi-list based on index `` ` `# List initialization``List` `=` `[``1``, ``2``, ``3``, ``4``, ``5``, ``6``]``List_of_List ``=` `[[``0``], [``0``, ``1``, ``2``], [``0``, ``1``],``                ``[``0``, ``1``], [``0``, ``1``, ``2``], [``0``]]``Output ``=` `[]`` ` `# Iteration ``for` `x ``in` `range``(``len``(``List``)):``    ``temp ``=` `[]``    ``for` `y ``in` `List_of_List[x]:``        ``temp.append(y ``+` `List``[x])``    ``Output.append(temp)`` ` `# Printing``print``(``"Initial list is:"``, ``List``)``print``(``"Initial list of list is :"``, List_of_List)``print``(``"Output is"``, Output)`
Output:

```Initial list is: [1, 2, 3, 4, 5, 6]
Initial list of list is : [, [0, 1, 2], [0, 1], [0, 1], [0, 1, 2], ]
Output is [, [2, 3, 4], [3, 4], [4, 5], [5, 6, 7], ]
```

Method #2: Using enumerate()

 `# Python code to add list elements ``# with a multi-list based on index`` ` `# List initialization``List` `=` `[``1``, ``2``, ``3``, ``4``, ``5``, ``6``]``List_of_List ``=` `[[``0``], [``0``, ``1``, ``2``], [``0``, ``1``], [``0``, ``1``], [``0``, ``1``, ``2``], [``0``]]``Output ``=` `[]`` ` `# using enumerate ``Output ``=` `[[elem ``+` `List``[x] ``for` `elem ``in` `y] ``          ``for` `x, y ``in` `enumerate``(List_of_List)]`` ` ` ` `# Printing``print``(``"Initial list is:"``, ``List``)``print``(``"Initial list of list is :"``, List_of_List)``print``(``"Output is"``, Output)`
Output:
```Initial list is: [1, 2, 3, 4, 5, 6]
Initial list of list is : [, [0, 1, 2], [0, 1], [0, 1], [0, 1, 2], ]
Output is [, [2, 3, 4], [3, 4], [4, 5], [5, 6, 7], ]
```

Method #3: Using `Zip()`

 `# Python code to add list elements ``# with a multi-list based on index`` ` `# List initialization``List` `=` `[``1``, ``2``, ``3``, ``4``, ``5``, ``6``]``List_of_List ``=` `[[``0``], [``0``, ``1``, ``2``], [``0``, ``1``], [``0``, ``1``], [``0``, ``1``, ``2``], [``0``]]``Output ``=` `[]`` ` `# using zip ``Output ``=` `[[z ``+` `x ``for` `z ``in` `y ]``for` `x, y ``in``                 ``zip``(``List``, List_of_List)]`` ` `# Printing``print``(``"Initial list is:"``, ``List``)``print``(``"Initial list of list is :"``, List_of_List)``print``(``"Output is"``, Output)`
Output:
```Initial list is: [1, 2, 3, 4, 5, 6]
Initial list of list is : [, [0, 1, 2], [0, 1], [0, 1], [0, 1, 2], ]
Output is [, [2, 3, 4], [3, 4], [4, 5], [5, 6, 7], ]
```

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up