Related Articles
Python | Increase list size by padding each element by N
• Last Updated : 24 Jun, 2019

Given a list and an integer N, write a Python program to increase the size of the list by padding each element by N.

Examples:

```Input : lst = [1, 2, 3]
N = 3
Output : [1, 1, 1, 2, 2, 2, 3, 3, 3]

Input : lst = ['cats', 'dogs']
N = 2
Output : ['cats', 'cats', 'dogs', 'dogs']
```

Approach #1 : List comprehension

 `# Python3 program to increase list size ``# by padding each element by N`` ` `def` `increaseSize(lst, N):``     ` `    ``return` `[el ``for` `el ``in` `lst ``for` `_ ``in` `range``(N)]``         ` `# Driver code``lst ``=` `[``1``, ``2``, ``3``]``N ``=` `3``print``(increaseSize(lst, N))`
Output:
```[1, 1, 1, 2, 2, 2, 3, 3, 3]
```

Approach #2 : Using `functools.reduce()` method

The reduce function apply a particular function passed in its argument to all of the list elements. Therefore, in this approach we apply a function on each element where it’s occurrence gets multiplied by N.

 `# Python3 program to increase list size ``# by padding each element by N``from` `functools ``import` `reduce`` ` `def` `increaseSize(lst, N):``     ` `    ``return` `reduce``(``lambda` `x, y: x ``+` `y, [[el]``*``N ``for` `el ``in` `lst])``         ` `# Driver code``lst ``=` `[``1``, ``2``, ``3``]``N ``=` `3``print``(increaseSize(lst, N))`
Output:
```[1, 1, 1, 2, 2, 2, 3, 3, 3]
```

Approach #3 : Using itertools.chain()

 `# Python3 program to increase list size ``# by padding each element by N``from` `itertools ``import` `chain`` ` `def` `increaseSize(lst, N):``     ` `    ``return` `list``(chain(``*``([el]``*``N ``for` `el ``in` `lst)))``         ` `# Driver code``lst ``=` `[``1``, ``2``, ``3``]``N ``=` `3``print``(increaseSize(lst, N))`
Output:
```[1, 1, 1, 2, 2, 2, 3, 3, 3]
```

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