파이썬의 여러가지 모듈과 패키지사용법에 대해

2021. 11. 16. 19:14python

반응형

1. 모듈

 

모듈을 왜 써야할까요?

코드의 길이가 길어지는 상황들이 많이 발생하게 되는데, 이때, 모든 함수나 변수를 구현하는 것은 불가능합니다. 

그래서 누군가 만들어놓은 함수와 변수등을 활용하는 것은 효과적이다!

 

모듈이란?

특정한 목적을 가진 함수, 자료의 모임이다.

 

1-1. 모듈 사용하기

import(불러오드) 키워드를 이용해서 모듈 사용

import random
# random 모듈 불러오기

 

모듈 사용법 확인하기 ; 모듈 속 사용하려는 함수/변수(변할수 있는 수 X)의 사용법 확인

random.randrange(start, stop) ; range(start, stop) 중의 한 원소를 가지고 온다.

random(모듈/패키지).randrange(함수) ; random안에 들어있는 randrange함수를 불러와라~!!

 

.(dot)(점 표기법; Dot notation)을 쓴 후에 모듈 속 함수.변수 사용

 

import random
print(random.randrange(0,2)) # A(모듈).B(함수)
# 0이상 2미만 수 중 임의로 출력

 

우리가 원하는 기능이 모듈로 구현되어있지 않으면??

우리가 원하는 내용이 담긴 모듈 제작 가능!!

.py(파이썬 파일)로 만들 수 있다.

 

import my_module

1) py파일을 생성 후, 함수와 변수를 만든다.

# cal.py (모듈)
def plus(a, b):
	c = a + b
    return c

2) 다른 파일에서 만들어 둔 py파일을 불러온다.

# main.py (모듈)
import cal # cal모듈을 불러와라

3) 불러온 모듈 속 함수, 변수를 활용하자!

# main.py
import cal
print(cal.plus(3,4)) #모듈안에 있는 함수를 불러오자
#7

 

1-2. 모듈 실습

# cal.py
def plus(a, b):
    return a+b

def minus(a, b):
    return a-b

modelName = 'ELI-C2'
# main.py
import cal

var1 = cal.modelName
var2 = cal.plus(3,4)
var3 = cal.minus(7,2)

## 변수의 값을 확인하는 출력문입니다.
print(var1, var2, var3)

#ELI-C2 7 5

 

2. 패키지

패키지는 모듈을 폴더(Directory)로 구분하여 관리하는 것

패키지가 필요한 이유는? 모듈을 편리하게 관리하기 위해서!!

 

다음과 같이 모듈이 있을 때, 이를 사용하는 방법은?!

1) import를 이용해서 폴더를 불러온 후, 함수를 실행하자~!

import user.cal #폴더.모듈
print(cal.plus(3,4)) # 모듈.함수

2) from -import 사용 ; 함수/변수 사용시 .를 써주지 않아도 된다!

from A(모듈/패키지) import B(함수)
from user.cal import plus # user안에 있는 cal모듈로부터 plus라는 함수를 불러와라
print(plus(3,4))
# cal.plus()라고 적어주지 않아도 된다!

하지만!! main.py에도 plus함수가 있고, cal.py에도 plus함수가 있다면 충돌이 일어날 수도 있다!

이름이 겹치는 것에 대해서 주의해야한다!

 

2-1. 패키지 실습

from urllib.request import urlopen
# urllib패키지 안에 있는 request모듈에서 urlopen함수를 불러오자

webpage = urlopen("https://en.wikipedia.org/wiki/Lorem_ipsum").read().decode("utf-8")
print(webpage)

 

본 게시물은 2021 NIPA AI 온라인 elice교육을 듣고 작성한 글입니다. 

반응형