[알고리즘 맛보기 with Python] List Comprehension

띵슈롱·2023년 8월 6일

알고리즘 맛보기

목록 보기
1/7
post-thumbnail

목차

  1. 맛보기
  2. 문법 맛보기
    2-1. 기본적인 구조
    2-2. 응용한 구조

1. 맛보기

시작 하기에 앞서 list comperhension 맛 부터 보면
아래에 있는 for 문으로 구성된 코드를 list comperhension을 이용하여 단 한줄로 코딩 할 수 있다는 장점이 있다.

array = []
#[0,2,4,6,8,10,12,14,16,18]

for i in range(0,20,2):
#[0,4,16,36,64,100,144 ...]
	array.append(i*i)print(array)

array = [i*i for i in range(0,20,2)]

2. 문법 맛보기

2-1. 기본적인 구조

[변수를 활용 한 식 for 사용할 변수 이름 in range(범위)]

예시

arr = [ 0 for i in range(5)] # arr = [0,0,0,0,0] 배열 생성 및 0으로 초기화
arr1 = [i for i in range(0,10)] # arr1 = [0,1,2,3,4,5,6,7,8,9]
arr2 = [i * 2 for i in range(0,5)] #arr2 = [0,2,4,8,10]

2-2. 응용한 구조

조건문

[변수를 활용한 식 for 사용할 변수 이름 in range(범위) if 조건]

예시

arr = [ i for i in range(10) if i % 2 == 0] #arr = [0,2,4,6,8] 짝수
arr1 = [i for i in range(10) if i % 2 != 0] #arr1  = [1,3,5,7,9] 홀수

2차원 리스트

[[ 변수를 활용한 식 for 변수1 in range(범위)] for 변수2 in range(범위)]

예시

arr = [[0 for _ in range(2)] for __ in range(3)] #arr= [[0,0,], [0,0], [0,0]]
arr1 = [ i for i in range(3)] for j in range(2)] #arr1 = [[0,1,2], [0,1,2]]
# input 1 2\n 3 4\n 5 6\n 
arr2 = [list(map(int,input().split())) for _ in range(3)] #arr2 = [[1,2], [3, 4], [5, 6]]

소화 완료 😊
마싯다 List Comperhension

참고 사이트

  1. https://velog.io/@mttw2820/List-Comprehension-%EB%AC%B8%EB%B2%95-%EC%A0%95%EB%A6%AC
  2. https://shoark7.github.io/programming/python/about-list-comprehension-python
profile
'나' 라는 변수

0개의 댓글