728x90
리스트 컴프리헨션 (List Comprehension)
파이썬의 꽃이라고도 할 수 있죠!
[대괄호] 안에 for문과 if문을 넣어 간단하게 리스트를 생성하는 방법을 말한다
2차원 배열을 생성할 때도 편리하고, 여러 줄로 작성할 코드를 한 줄로 줄여준다
예시
😢 리스트 컴프리헨션 없이 '20 이하 2의 배수 리스트' 생성하기
list_a = []
for i in range(1, 20):
if i % 2 == 0:
list_a.append(i)
print(list_a)
# [2, 4, 6, 8, 10, 12, 14, 16, 18]
😆 리스트 컴프리헨션으로 '20 이하 2의 배수 리스트' 생성하기
list_a = [i for i in range(1, 20) if i % 2 == 0]
print(list_a)
# [2, 4, 6, 8, 10, 12, 14, 16, 18]
🙋 2차원 배열을 입력받을 때 사용할 수 있다
입력이 다음과 같을 때
1 2 3
4 5 6
7 8 9
다음 코드로 2차원 배열을 생성하여 저장할 수 있다
list_a = [list(map(int, input().split())) for _ in range(3)]
print(list_a)
# [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
📚 참고서적 : 이것이 코딩테스트다 with 파이썬
728x90
'Computer Science > Algorithm' 카테고리의 다른 글
[Algorithm] DFS (깊이 우선 탐색) / BFS (너비 우선 탐색) : 파이썬 예제 코드 + 인접 행렬, 인접 리스트 (0) | 2021.09.01 |
---|---|
[Algorithm] 파이썬에서 스택(Stack)과 큐(Queue)의 사용 (0) | 2021.09.01 |
[Algorithm] 구현 문제 (Implementation) with 방향 이동(dx, dy) (0) | 2021.09.01 |
[Algorithm] 그리디 알고리즘 (Greedy Algorithm), 탐욕법 (0) | 2021.09.01 |
[Algorithm] 내가 보려고 정리하는 '이것이 취업을 위한 코딩 테스트다' (0) | 2021.09.01 |