Python/공부

파이썬 컴프리헨션(Comprehension) / 다차원 배열_NumPy()

끈끈 2023. 4. 4. 12:10

 

컴프리헨션(Comprehension)

 

 

파이썬의 조건문, 반복문 등을 알아야 하며 리스트, 집합, 딕셔너리 자료형에 사용될 수 있다

 

() 괄호를 사용하면 Generator Expression이 된다

 

(generator : iterator(반복으로 처리를 수행할 수 있는 객체)를 생성해주는 함수)

 

리스트 컴프리헨션(list comprehension)

 

반복문과 조건문을 함께 사용하여 리스트 생성하기

 

print([i for i in range(10) if i % 2 == 0]) # [0, 2, 4, 6, 8]

 

두 개의 반복문 사용하기

 

a = ['a', 'b', 'c']
b = ['1', '2', '3']
new_list = []
for i in a:
    for j in b:
        new_list.append(i+j)
print(new_list) # ['a1', 'a2', 'a3', 'b1', 'b2', 'b3', 'c1', 'c2', 'c3']

 

이것을 간단하게 표현하면,

 

a = ['a', 'b', 'c']
b = ['1', '2', '3']
print([i+j for i in a for j in b])
# ['a1', 'a2', 'a3', 'b1', 'b2', 'b3', 'c1', 'c2', 'c3']

 

여기서 조건문은 서로 and 연산자로 묶이는 셈이다

 

if 외에 else도 함께 사용할 수 있지만, elif는 사용할 수 없다

 

대신 else 뒤에 if를 여러번 사용함으로 elif의 기능을 만들 수 있다

 

print(['one' if i == 1 else 'two' if i == 2
       else 'three' if i == 3 else 'hum' for i in range(5)])
# ['hum', 'one', 'two', 'three', 'hum']

 


 

array(어레이)라는 단위는 고등 수학에서의 행렬(matrix)과 유사하다

 

다차원 배열(multi-dimensional array)

  • 1차원 배열이 여러 개 모인 것
  • 2차원 이상의 배열
  • 배열 요소로 또 다른 배열
  • 원하는 차원 수만큼 배열 기호([])를 추가

 

1차원 배열

int array[5] → [행]

2차원 배열

int array[5][4] → [행][열]

3차원 배열

int array[5][4][3] → [면][행][열]

 

import numpy

 

 

5-3. numpy · 왕초보를 위한 파이썬 활용하기

 

cycorld.gitbooks.io