파이썬 문법/파이썬 넘파이

파이썬 문제 풀이로 기초 문법 빠르게 이해하고 활용하기 - 13.넘파이

파기차차 2022. 12. 7. 08:19
728x90
반응형
SMALL
728x90
반응형

ㅁ 개요

 

O 소개
 

 - 우리는 파이썬 문법(문제 풀이)을 처음부터 하나씩 모두 살펴보기 보다는 주제별 주요 문제를 풀어봄으로써 핵심 문법을 빠르게 체득할 수 있도록 하고, 이를 통해 실전에 바로 써먹을 수 있도록 할 것입니다.

 

 


 

O 우리의 목표
 

 

 - 아래 표에서 나는 어느 위치에 있는지 한번 생각해 보시기 바랍니다.
레벨
별칭
등급
설명
나는 어디에?
파이썬 문외한
별칭 없음
0,1
0등급 :  파이썬에 대하여 들어본 적 없음, 아무것도 모름
1등급 : 파이썬에 대하여 들어봄, 아주 초보적인 문법을 아는 정도
 
파이썬 유치원생
하수
2,3
2등급 : 파이썬 문법을 일부 알고 있으나, 활용을 전혀 하지 못함
3등급 : 파이썬 문법을 알고 있으나, 활용을 거의 하지 못함
 
파이썬 초등학생
평민
4,5
4등급 : 파이썬 문법을 알고 있으며, 이를 활용하여 일부 간단한 프로그램(텍스트 계산기 등)을 만드는 수준
5등급 : 파이썬 문법을 알고 있으며, 이를 활용하여 일부 간단한 프로그램(텍스트 계산기 등)을 만들고 간단한 응용(계산기에 기능 추가 등)을 할 수 있는 수준
 
파이썬 중학생
중수
6
6등급 : 파이썬 문법을 알고 있으며, 이를 활용하여 기존 프로그램(텍스트 계산기 등)을 만들고 응용(GUI 계산기 등) 할 수 있는 수준
 
파이썬 고등학생
고수
7
7등급 : 파이썬 문법을 알고 있으며, 이를 활용하여 새로운 프로그램(검색 프로그램 등)을 만들고 응용(GUI 검색 프로그램 등) 할 수 있는 수준
 
파이썬 대학생
지존
8
8등급 : 파이썬 문법을 알고 있으며, 이를 활용하여 새로운 프로그램(검색 프로그램 등)을 만들고 응용(GUI 검색 프로그램 등) 할 수 있으며, 사용자의 편의성, 프로그램의 속도, 성능적 측면도 고려할 수 있는 수준
 
파이썬 대학원생
레전드
9
9등급 : 파이썬 문법을 알고 있으며, 이를 활용하여 새로운 프로그램(검색 프로그램 등)을 만들고 응용(GUI 검색 프로그램 등) 할 수 있으며, 사용자의 편의성, 프로그램의 속도, 성능적 측면을 고려하고 프로그램 UI도 준수하게 만들어 낼 수 있는 수준
 
파이썬 박사
10
10등급 : 파이썬으로 새로운 것을 자유자재로 만들어내는데 어려움이 없으며, 독창적이고 창의적이며, 사용자 편의성, 아름다운UI, 속도, 성능, 마케팅까지 모든 면에서 독보적이고 유니크한 탑클래스 능력을 보유한 수준
 
 
 

 


 - 우리는 우리의 파이썬 레벨을 최고 수준(지존, 레전드, 갓)으로 달성하기 위해 빠르게 한걸음씩 나아갈 것입니다.

 - 아래 기초 문법을 모두 이해하시면 파이썬유치원생(하수)을 탈출 하실 수 있습니다.
 즉, 이후부터는 간단한 프로그램 개발이 가능하며, 레벨이 빠르게 올라 가실 수 있을 것입니다.

 

 


 



O 문제 (13.넘파이)

 

# 1) 넘파이를 사용하는 이유가 무엇인가요?


# 2) 아래 리스트에 저장한 모든 값에 1씩 더해서 출력하는 소스를 만들어 보시고, 최종 결과 변수의 타입을 확인하세요.
# (일단 넘파이를 사용하지 않고 리스트로 만들어 봅니다.)

org_list = [1,3,5,7,11]
result_list = []


# 3) 넘파이를 사용하여 위의 2)번 코드와 동일한 결과를 출력하고 최종 결과 변수의 타입을 확인하세요.

import numpy as np
org_list = np.array([1,3,5,7,11])


# 4) 넘파이를 사용해 1차원 배열을 2차원 배열로 변경해 보세요.

onecha = np.array([1,3,5,7,9,11])


# 5) 넘파이를 사용해 아래와 같이 곱하는 경우 결과를 예상해 보세요.

a = np.array([[1,1],
              [0,1]])
b = np.array([[2,0],
              [3,4]])
print(a*b)


# 6) 아래와 같은 결과가 나오도록 print()문을 완성해 보세요.

aa = np.arange(12).reshape(3,4)
print(aa)

# [[ 0  1  2  3] 
#  [ 4  5  6  7]
#  [ 8  9 10 11]]

print(aa.max())
# 11 

# [12 15 18 21]<--------- 이렇게 나오도록 해보세요

# [0 4 8]<--------- 이렇게 나오도록 해보세요


# 7) 아래 결과를 예상해 보시고, 추가로 아래와 같은 결과가 나오도록 print()문을 완성해 보세요.print

data = np.array([1,2,3])
print(data)
# [1 2 3]

print(data[1]) # <---- 결과를 예상해 보세요

print(data[0:2]) # <---- 결과를 예상해 보세요

print(data[-2:]) # <---- 결과를 예상해 보세요

# [2 3] <-- 이렇게 나오게 하되 위와는 다르게 명령을 내려 보세요.


# 8) 아래 결과를 예상해 보시고, 추가로 아래와 같은 결과가 나오도록 print()문을 완성해 보세요.

aaa = np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])
print(aaa[aaa < 5]) # <-- 결과를 예상해 보세요

# [ 3  4  5  6  7  8  9 10] <-- 이렇게 나오게 해보세요(aaa가 2보다 크고, 11보다 작다)

 

 

 

O 모범 답안

 

 - 답안을 보기전에 스스로 풀어 보셨나요?

 - 답안을 보기전에 반드시 스스로 풀어보시고, 내가 푼 내용과 맞는지 확인하기 위한 용도로만 답안을 보셔야 실력이 향상될 수  있습니다.

 

 - 모범 답안은 아래 링크에서 확인 가능합니다.

2022.12.07 - [파이썬 문법/파이썬 기초 문법] - 파이썬 문제 풀이로 기초 문법 빠르게 이해하고 활용하기 - 13.넘파이(답안)

728x90
반응형
LIST