개발화이팅
모듈 본문
- 모듈 - 작은 프로그램 조각을 뜻 함
- 패키지 - 모듈의 묶음. 일종의 디렉토리처럼 하나의 패키지 안에 여러개의 모듈이 존재 모듈들이 포함관계를 가지며 거대한 패키지를 만듬
연습
fah_converter.py 작성
def convert_c_to_f(celcius_value):
return celcius_value*9.0/5+32
module_ex.py 작성
import fah_converter
print("Enter a celsius value:")
celsius = float(input())
fahrenheit = fah_converter.convert_c_to_f(celsius)
print("That's", fahrenheit,"degrees Fahrenheit")
import fah_converter 로 기존에 만든 코드 파일에서 파일의 이름만으로 파일함수를 불러 사용가능하다
네임스페이스
모듈의 이름에 alias를 생성하여 모듈안으로 코드를 호출하는 방법
import fah_converter as fah
print(fah.convert_c_to_f(41.6))
이름을 fah로 변경하여 호출하였다. '모듈명.함수명' 구조로 호출할 수 있다.
두 번째 방법은 from 구문을 사용하여 특정 함수나 클래스만 호출하는 방법
from fah_converter import convert_c_to_f
print(convert_c_to_f(41.6))
'from 모듈명 import 모듈안의 함수명' 형태로 모듈안의 함수를 가져다가 사용할 수 있다.
주의할 점은 from 패키지를 호출하고, 해당 패키지 안에 있는 모듈을 호출할 때도 from 키워드를 사용 할 수 있음
세 번째 방법은 해당 모듈안의 모든 함수, 변수, 클래스를 가져오는 별표(*)를 사용하는 것
from fah_converter import *
print(convert_c_to_f(41.6))
'form 모듈명 import *'을 사용하게 되면 모듈안의 사용가능한 모든 리소스를 호출한다.
주의 사항 *을 사용하게 되면
코드가 복잡해지고 모듈의 수가 많아지면 어떤 모듈의 어떤 변수,함수를 불러오는지 파악하기 힘들어짐
코드 가독성이 떨어지게된다.
'python' 카테고리의 다른 글
데코레이터 사용1 (0) | 2019.08.21 |
---|---|
python_ 자료구조 (3) | 2019.08.20 |