상세 컨텐츠

본문 제목

[Python] 리스트 컴프리헨션

Python

by TUZA 2022. 1. 3. 23:59

본문

- 리스트를 초기화하는 방법 중 하나이다.

- 대괄호 안에 조건문과 반복문을 적용하여 리스트를 초기화할 수 있다.

#0부터 9까지의 수를 포함하는 리스트
array = [i for i in range(10)]
print(array) #[0,1,2,3,4,5,6,7,8,9]

#range()에 숫자를 할당하면 0부터 해당 숫자-1까지 i가 순회할 수 있도록해줌.
#그리고 첫번째 i는 for i in 의 i를 이용해서 배열을 만들겠다는 의미.

#start Value와 end Value를 설정할 수 있고, end Value는 미포함.
array = [i for i in range(1,5)]
print(array)


# 0부터 19까지의 수 중에서 홀수만 포함하는 리스트
array= [i for i in range(20) if i % 2 ==1]
print(array) #[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]

# 1부터 9까지의 수들의 제곱 값을 포함하는 리스트
array = [i * i for i in range(1, 10)]
print(array)

# 일반적인 코드
array = []
for i in range(20):
  if i % 2 ==1:
    array.append(i)

print(array)

- 2차원 리스트를 초기활 때 컴프리헨션을 사용하는 것이 효율적이다.

- N * M 크기의 2차원 리스트를 한 번에 초기화해야할 때 유용하다.

array = [[0]*m for _ in range(n)]

#예시
n = 4
m = 3
array= [[0]*m for _ in range(n)]
print(array) #[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]

 

*언더바의 사용

- 파이썬에서 반복을 수행하되 반복을 위한 변수의 값을 무시하고자 할 때 언더바(_)를 자주 사용한다.

for _ in range(5):
	print('Hello World')
반응형

'Python' 카테고리의 다른 글

[Python] 문자열 자료형  (0) 2022.01.04
[Python] 리스트 관련 메서드  (0) 2022.01.04
[Python] 리스트의 인덱싱과 슬라이싱  (0) 2022.01.03
[Python] 리스트 자료형  (0) 2022.01.03
[Python] 수 자료형의 연산  (0) 2022.01.03

관련글 더보기