목록 이해는 기존 목록을 기반으로 목록을 만드는 간결한 방법을 제공합니다. 목록 이해를 사용할 때 문자열과 튜플을 포함한 모든 반복 가능한 항목을 활용하여 목록을 작성할 수 있습니다. list comprehension은 for 절이 뒤따르는 표현식을 포함하는 iterable로 구성됩니다. 그 뒤에 추가 for 또는 if 절이 올 수 있습니다.
문자열을 기반으로 목록을 생성하는 예를 살펴보겠습니다.
hello_letters = [letter for letter in 'hello'] print(hello_letters)
이 결과는 다음과 같습니다.
['h', 'e', 'l', 'l', 'o']
string hello는 반복 가능하며 이 루프가 반복될 때마다 문자에 새 값이 할당됩니다. 이 목록 이해는 다음과 같습니다.
hello_letters = [] for letter in 'hello': hello_letters.append(letter)
이해에 조건을 붙일 수도 있습니다. 예를 들어,
hello_letters = [letter for letter in 'hello' if letter != 'l'] print(hello_letters)
이 결과는 다음과 같습니다.
['h', 'e', 'o']
변수에 대해 모든 종류의 작업을 수행할 수 있습니다. 예를 들어,
squares = [i ** 2 for i in range(1, 6)] print(squares)
이 결과는 다음과 같습니다.
[1, 4, 9, 16, 25]
이러한 이해의 사용 사례가 훨씬 더 많습니다. 그들은 꽤 표현력이 풍부하고 유용합니다. https://www.digitalocean.com/community/tutorials/understanding-list-comprehensions-in-python-3에서 이에 대해 자세히 알아볼 수 있습니다.