소개
Python 에서 리스트는 다른 리스트를 요소로 포함할 수 있습니다. 때로는 중첩된 리스트를 평탄화해야 하는데, 이는 중첩된 리스트를 원래 리스트의 모든 요소를 포함하는 단일 리스트로 변환하는 것을 의미합니다. 이를 수행하는 한 가지 방법은 spread operator (확산 연산자) 를 사용하는 것입니다. 이 챌린지에서는 spread operator 를 사용하여 리스트를 평탄화하는 함수를 구현하라는 요청을 받게 됩니다.
Python 에서 리스트는 다른 리스트를 요소로 포함할 수 있습니다. 때로는 중첩된 리스트를 평탄화해야 하는데, 이는 중첩된 리스트를 원래 리스트의 모든 요소를 포함하는 단일 리스트로 변환하는 것을 의미합니다. 이를 수행하는 한 가지 방법은 spread operator (확산 연산자) 를 사용하는 것입니다. 이 챌린지에서는 spread operator 를 사용하여 리스트를 평탄화하는 함수를 구현하라는 요청을 받게 됩니다.
spread(arg)라는 함수를 작성하세요. 이 함수는 리스트를 인수로 받아 원래 리스트의 모든 요소를 평탄화하여 포함하는 새로운 리스트를 반환합니다. 원래 리스트의 요소가 자체적으로 리스트인 경우, 해당 요소의 요소는 새 리스트에 개별적으로 추가되어야 합니다. 이 함수는 원래 리스트를 수정해서는 안 됩니다.
함수를 구현하려면 원래 리스트의 요소를 반복하고 spread operator (확산 연산자) 를 사용하여 요소를 새 리스트에 추가해야 합니다. 요소가 리스트인 경우, extend() 메서드를 사용하여 해당 요소의 요소를 새 리스트에 추가해야 합니다. 요소가 리스트가 아닌 경우, append() 메서드를 사용하여 새 리스트에 추가해야 합니다.
def spread(arg):
ret = []
for i in arg:
ret.extend(i) if isinstance(i, list) else ret.append(i)
return ret
spread([1, 2, 3, [4, 5, 6], [7], 8, 9]) ## [1, 2, 3, 4, 5, 6, 7, 8, 9]
이 챌린지에서는 Python 에서 spread operator (확산 연산자) 를 사용하여 리스트를 평탄화하는 방법을 배웠습니다. 또한 리스트를 인수로 받아 원래 리스트의 모든 요소를 평탄화하여 포함하는 새로운 리스트를 반환하는 함수를 구현했습니다. 이는 Python 에서 중첩된 리스트로 작업할 때 알아두면 유용한 기술입니다.