💻☕프로그래밍 언어/Python
파이썬 List Comprehension (리스트 컴프리헨션)
들판속초록풀
2024. 11. 12. 11:10
comprehension 영단어 뜻은 이해, 이해력, 포용력 이다.
List Comprehension 을 이용하면 리스트의 모든 요소를 단 한 줄로 관여할 수 있다
- 표현식 + for문 형식
# case 1
result = [int(input()) for i in range()]
# case 2
result = [list(map(int, input().split())) for i in range(n)]
# case 3
result = [[0]*n for i in range(n)]
- 표현식 + for문 + 조건문 형식
# case 1
n = 10
result = [i for i in range(n) if i % 2 == 0]
print(result)
# 출력 결과 : [0, 2, 4, 6, 8]
# case 2
left_side = [x for x in tail if x <= pivot]
right_side = [x for x in tail if x > pivot]
# 조건문을 2개 사용하는 경우
result = [i for i in range(30) if i%2 == 0 if i%3 == 0]
print(result)
# 출력 결과 : [0, 6, 12, 18, 24]
- True/False 표현식 + if 조건문 else + True/False 표현식 + for문 형식
else 까지 써야 하는 경우라면 조건문이 for문보다 선행한다.
n = 5
result = [False if i % 2 == 0 else True for i in range(n)]
print(result)
# 출력 결과 : [False, True, False, True, False]
- 중첩 for문 형식
a = [1, 2]
b = [9, 8]
result = [(i,j) for i in a for j in b]
print(result)
# 출력 결과 : [(1, 9), (1, 8), (2, 9), (2, 8)]
참고)
https://code-angie.tistory.com/39
[Python] List Comprehension
코딩테스트 문제를 풀다 보면 문제를 입력받을 때, 이차원 배열을 받을 때가 많다. for문을 통해서 배열을 입력받을 때 빈 리스트에 한 줄씩 append 해줄 수 있지만, list comprehension을 이용하면 쉽게
code-angie.tistory.com