본문 바로가기
공부노트/코딩공부

[파이썬(Python)] 파이썬 리스트 컴프리헨션/ list comprehension

by 세모나_semona 2020. 10. 10.
반응형

[파이썬(Python)] 파이썬 리스트 컴프리헨션/ list comprehension

 

리스트에 1부터 100까지 변수를 추가하고 싶다면

일반적인 방법으로는

 

numbers = [ ] 

for n in range(1, 100+1):

    numbers.append(n) 

 

이런식으로 for 문을 사용하고 append로 numbers에 추가해주는 방법이 있다.

 

하지만 리스트 컴프리헨션을 사용하면 한 줄로 끝낼 수 있다.

 

# 리스트 컴프리헨션

 

numbers = [ x for x in range(1, 101)]

 

위와 같이 한줄로 표현이 가능하며 코드 해석을 해보자면,

맨 앞 x에 반복문을 통해 들어온 x를 append 한다고 생각할 수 있다.

 

이 리스트 컴프리헨션으로 한가지 더 예제를 풀어본다면

 

# 1부터 100까지 자연수 중 '홀수'만 한 라인으로 출력 하세요.

 

q = [x for x in range(1,101if x % 2 != 0]

print(q)

 

위와 같이 뒤에 if 문을 붙일 수 있으며

또한 for 과 if 둘다 중복으로도 가능하다.

 

[ (x, y) for x in ['쌈밥''치킨''피자'for y in ['사과''아이스크림''커피']]

 

[ x for x in range(10if x < 5 if x % 2 == 0 ]



# 기본 형식

x = [x for x in range(1,100if 조건문 ] 

 

아래의 그림을 보면 더욱 쉽게 이해 될 수 있다.

 

사진 출처: 제대로 파이썬 https://wikidocs.net/22805

 

반응형

댓글