(수업내용 : 모듈이란?
-
파이썬에서 모듈(module)이란 함수나 변수 또는 클래스들을 모아 놓은 파일이다.
파이썬 프로그램에서는 모듈을
불러와서 사용할 수 있다. 예를 들어서 우리는 이전에 turtle이라는 모듈을 불러온 후에 화면에 그림을 그리는 기
능을 사용했었다. 일반적으로 우리는 많은 모듈을 사용한다. 다른 사람들이 이미 만들어 놓은 모듈을 사용할 수도
있고 우리가 직접 만들어서 사용할 수도 있다. 여기서는 모듈을 어떻게 만들고 사용하는지를 알아보자. 그리고 파
이썬은 다양한 작업을 수행하는 모듈들을 지원한다. 우리는 많이 사용되고 유용한 모듈들을 선별하여 살펴볼 것
이다.
모듈이란?
- 모듈 안에 있는 함수들은 import 문장으로 다른 모듈로 포함될 수 있다. 모듈 중에서 main모듈은 최상위 수준에
서 실행되는 스크립트 문장을 의미한다.
2) 모듈 작성하기
- 간단한 모듈을 한번 만들어 보자. 그리 어렵지 않다.
파이썬 튜토리얼에 있는 피보나치 수열 모듈을 예로 설명해
보자. 다음 슬라이드에서 보도록 하자.
-
파이썬 프로그램이 길어지면, 유지 보수를 쉽게 하기 위해 여러 개의 파일로 분할 할 수 있다. 또한 파일을 사용
하면 한번 작성한 함수를 복사하지 않고 여러 프로그램에서 사용할 수 있다.) 모듈 작성하기
- 위와 같이 fib()와 fib2() 함수가 있는 파일 fibo.py를 만들고 현재 작업 디렉터리에 저장하도록 한다. 파일의 확장
자는 반드시 .py이어야 한다. 이 파일이 바로 모듈이다. 지금까지 파이참으로 만들어 왔던 소스 파일이 바로 모듈
인 것이다. 모듈 안에서 모듈의 이름은 __name__변수로 알 수 있다.
- filbo.py모듈에 들어 있는 모든 정의는 다른 모듈로 import될 수 있다. 우리가 만든 fibo.py라는 파일, 즉 모듈을
파이썬에서 불러와 사용하려면 어떻게 해야 할까? 다음과 같은 문장을 입력하여 실행한다.
import fibo
# 피보나치 수열 모듈
def fib(n): # 피보나치 수열 출력
a, b = 0, 1
while b < n:
print(b, end=' ')
a, b = b, a+b
print()
def fib2(n): # 피보나치 수열을 리스트로 반환
result = []
a, b = 0, 1
while b < n:
result.append(b)
a, b = b, a+b
return result
모듈 작성하기
- filbo.py를 불러오기 위해 import fibo라고 입력하고 있다. 이때는 확장자 .py를 붙이면 안 된다. import는 다른 사
람이 작성한
파이썬 모듈을 사용할 수 있게 해주는 명령어이다. import문장을 실행한다고 해서
파이썬 인터프리
터가 모듈 안의 함수들을 읽어 들여서 현재의 심볼 테이블에 저장하지는 않는다. 단지 모듈의 이름인 fibo만 심볼
테이블에 저장한다. 모듈의 이름을 이용하여 개발자는 다음과 같이 모듈 안의 함수들을 사용할 수 있다.
- 만약 fibo.fib()와 같이 함수를 사용할 때마다 모듈의 이름을 적어주는 것이 귀찮다면 다음과 같이 “from 모듈 im
port 함수” 문장을 사용하여도 된다. 이 방법을 사용하면 모듈 이름없이 해당 모듈의 함수를 사용할 수 있다.
- * 문자를 사용하는 방법도 있다. *는 모듈 안의 “모든 것”을 의미한다. 오늘 강의도 잘 들었습니다. 항상 정성을 다하여 자세하게 강의를 해 주셔서 너무 감사합니다. 저도 강사님의 정성과 정열을 보답하게위해 열십히 배우고 익히도록 하겠습니다 .오늘도 수고 많으셨습니다 .감사~~ 감사~~