새벽까지

 

파이썬 컴프리헨션을 이용한 리스트 생성 방법에 대해 스텝별로 자세하게 설명하겠습니다.

 


Step 1: 기본적인 리스트 생성

먼저, 파이썬 컴프리헨션 없이 기본적인 방법으로 리스트를 생성하는 방법입니다. 다음과 같이 리스트에 원하는 요소들을 직접 입력해줄 수 있습니다.

my_list = [1, 2, 3, 4, 5]

위 코드는 1부터 5까지의 숫자를 담은 리스트를 생성합니다. 이 방법은 간단하지만 요소의 개수가 많을 경우에는 코드가 길어지고 가독성이 떨어질 수 있습니다.


Step 2: for문을 이용한 리스트 생성

for문을 이용하면 반복문을 한 줄로 작성하여 리스트를 생성할 수 있습니다. 이 방법을 이용하면 코드의 길이를 줄이면서도 여러 요소를 포함한 리스트를 생성할 수 있습니다. 다음은 0부터 4까지의 숫자를 담은 리스트를 생성하는 예시입니다.

my_list = [i for i in range(5)]

위 코드에서 for문은 range(5)를 순회하며, 리스트의 요소로 들어갈 값을 정의합니다. 즉, 위 코드는 다음과 같은 코드와 동일한 결과를 출력합니다.

my_list = []
for i in range(5):
    my_list.append(i)

Step 3: if문을 이용한 리스트 생성

if문을 이용하면 조건문을 한 줄로 작성하여 리스트를 생성할 수 있습니다. 다음은 0부터 9까지의 숫자 중에서 2로 나누어 떨어지는 숫자만을 담은 리스트를 생성하는 예시입니다.

my_list = [i for i in range(10) if i % 2 == 0]

위 코드에서 if문은 range(10)을 순회하면서, 조건식 i % 2 == 0을 만족하는 경우에만 리스트의 요소로 들어갈 값을 정의합니다.


Step 4: 중첩된 for문과 if문을 이용한 리스트 생성

중첩된 for문과 if문을 이용하면 더욱 복잡한 리스트를 생성할 수 있습니다. 다음은 0부터 9까지의 숫자 중 2로 나누어 떨어지는 숫자는 "even", 그렇지 않은 숫자는 "odd"라는 문자열과 함께 리스트에 담는 예시입니다.

my_list = ["even" if i % 2 == 0 else "odd" for i in range(10)]

위 코드에서 if문은 range(10)을 순회하면서, 조건식 i % 2 == 0을 만족하는 경우에는 "even"을, 그렇지 않은 경우에는 "odd"를 리스트의 요소로 들어갈 값을 정의합니다.


Step 5: 리스트 포문 리턴

리스트 컴프리헨션에서는 for문과 if문을 이용하여 리스트를 생성할 뿐만 아니라, for문과 if문을 이용하여 조건에 맞는 요소들만을 추출할 수도 있습니다. 이를 "리스트 포문 리턴"이라고 부릅니다.

다음은 0부터 29까지의 숫자 중에서 홀수만을 담은 리스트를 생성하는 예시입니다.

my_list = [i for i in range(30) if i % 2]

위 코드에서 if문은 range(30)을 순회하면서, 조건식 i % 2을 만족하는 경우에만 리스트의 요소로 들어갈 값을 정의합니다. 여기서 조건식 i % 2은 0이 아닌 모든 홀수를 True로 평가합니다.

 

 

참고할만한 자료

 

 

5. Data Structures

This chapter describes some things you’ve learned about already in more detail, and adds some new things as well. More on Lists: The list data type has some more methods. Here are all of the method...

docs.python.org

 

'개발일지-TIL > python' 카테고리의 다른 글

파이썬 이중 배열 선언 초기화 컴프리헨션  (0) 2023.04.18
profile

새벽까지

@GoS

좋아요❤️ 구독👍🏻 감사합니다!