23 lines
419 B
Markdown
23 lines
419 B
Markdown
---
|
|
title: spread
|
|
tags: list,utility,intermediate
|
|
---
|
|
|
|
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:
|
|
if isinstance(i, list):
|
|
ret.extend(i)
|
|
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]
|
|
``` |