파이썬

[Python] 중첩 list 평탄화

동띵 2022. 10. 10. 00:02

1) extend 사용

def flatten(arg):
  ret = []
  for i in arg:
  	ret.extend(i) if isinstance(i, list) else ret.append(i)
  return ret

2) itertools 라이브러리 사용

import itertools

origin = [['복숭아', '수박'], ['토마토', '자두'], ['블루베리','레몬']]
flatten = list(itertools.chain.from_iterable(origin))

# print(flatten) -> ['복숭아', '수박', '토마토', '자두', '블루베리', '레몬']

itertools.chain.from_iterable()을 사용해 중첩 리스트를 풀면 itertools.chain type이 된다.

이를 list 형태로 만들어주기 위해 list()를 사용했다.