Files
30-seconds-of-code/snippets/spread.md
2022-06-09 13:00:34 +03:00

25 lines
544 B
Markdown

---
title: Spread list
tags: list
expertise: intermediate
cover: blog_images/digital-nomad-14.jpg
firstSeen: 2018-01-08T22:38:05+02:00
lastUpdated: 2020-09-15T16:13:06+03:00
---
Flattens a list, by spreading its elements into a new list.
- Loop over elements, use `list.extend()` if the element is a list, `list.append()` otherwise.
```py
def spread(arg):
ret = []
for i in arg:
ret.extend(i) if isinstance(i, list) else ret.append(i)
return ret
```
```py
spread([1, 2, 3, [4, 5, 6], [7], 8, 9]) # [1, 2, 3, 4, 5, 6, 7, 8, 9]
```