Professional Documents
Culture Documents
목차 1 2
모듈의 모듈
정의 사용하기
3 4
주요 외장 모듈
내장 모듈 만들기
모듈의 개요
모듈
print(math.sin(1))
print(math.tan(1))
print(math.floor(11.1))
모듈의 개요
파이썬에서의 모듈
• 대략 200개가 넘는 모듈을 지원
문자열(string), 날짜(data), 시간(time), 십진수(decimal),
랜덤(random)파일(file), os, sqlite3, sys, xml, email, http 등
모듈을 사용하는 이유
• 코드의 재사용에 유리
• 코드를 이름공간(기능별)으로 구분하고 관리에 편리
• 복잡하고 어려운 기능을 포함하는 프로그램을
간단한 코드로 제작 가능
출처 | https://upload.wikimedia.org
모듈의 개요
모듈 import
• import: 모듈을 현재 이름공간으로 가져오는 역할
>>> import math
>>> math.pow(2,10)
1024.0
>>> math.pi
3.14159226535897931
print(sin(1))
print(tan(1))
print(floor(11.1))
print(sin(1))
print(tan(1))
print(floor(11.1))
• import: 모듈명.함수명( )
• from: 함수명( )
함수의 이름 중복시 문제 발생
모듈 사용하기
as 구문
• 가져온 모듈에 이름을 붙일 때 사용
• 기본형태: 모듈명 as 이름
print(mymath.sin(1))
print(mymath.tan(1))
print(mymath.floor(11.1))
주요 내장 모듈
random 모듈
• 목적: 다양한 분포에 대한
의사 난수(pseudo random value) 생성기 구현
의사 난수: 컴퓨터는 일반적인 정의의 난수 생성이 불가능
→ 정해진 패턴의 난수 생성
• 모듈 활용 사례
import random as psv
import sys
sys.getwindowsversion( )
#시스템의 윈도우 버전(서비스팩)을 튜플로 리턴
sys.copyright( ) #파이썬 인터프리터 저작권을 문자열로 리턴
sys.version( ) #파이썬 인터프리터의 버전 번호 및 빌드번호 등을
#문자열로 리턴
os 모듈
• 목적: 운영체제(operating system)에서 제공하는 여러 기능을
파이썬에서 수행
import os
import datetime
dt = datatime.datetime.now( ) #현재지역의 시간과 날짜 반환
dt.year
dt.month
dt.day
dt.hour
dt.minute
dt.second
time 모듈
• 목적: 상대적인 시간 활용 (타이머)
import time
print(“5초간 정지”)
time.sleep(5) #주어진 초 동안 호출하는 스레드의 실행을 일시 중단
print(“5초간 정지 끝”)
외장 모듈 만들기
만들고자 하는 변수와 함수를 모듈명의 파일에 선언
• 원의 지름 및 면적을 계산하는 모듈 (simple_circle.py) 정의
simple_circle.py
PI = 3.14
def radius_input( ):
output = input(“반지름 입력:”)
return float(output)
• 모듈 업로드 후 import 사용
import simple_circle as sc
radius=sc.radius_input( )
print(sc.cal_circumference(radius))
print(sc.cal_circle_area(radius))
외장 모듈 만들기
모듈의 위치 (타 환경 사용시)
• 프로그램이 실행된 디렉토리 내에서 검색
• PYTHONPATH 환경변수에 지정된 디렉토리 검색
• 파이썬 라이브러리 디렉토리 검색
파이썬을 설치한 곳 아래 Lib 디렉토리
패키지(package)
• 모듈을 디렉토리 형식으로 구조화
용어 정리
함수
• 특정 기능을 수행하는 코드의 모임
• 내장함수: 파이썬 개발자들이 이미 만들어 둔 함수
• 사용자 지정 함수: 사용자가 여러 코드를 묶어서 새로 만든 함수
메소드
• 특정 자료에 대해 특정 기능을 하는 코드 (클래스 내 멤버 함수)
모듈
• 함수, 변수, 클래스 등을 구현해놓은 파이썬 파일(.py)
패키지
• 모듈을 폴더로 구분하여 관리하는 것
라이브러리
• 여러 모듈과 패키지를 묶어서 라이브러리라고 함