● 패키지

패키지(packages)란 관련 있는 모듈의 집합이다.
패키지는 파이썬 모듈을 계층적(디렉터리 구조)으로 관리할 수 있게 해준다.
* 모듈 이름이 A.B라면 A는 패키지 이름이되고 B는 A패키지의 모듈이 된다.
* 파이썬에서 모듈은 하나의 파이썬 파일이다. *.py
- 패키지 만들기
※ game 패키지 예제
C:/doit/game/__init__.py
C:/doit/game/sound/__init__.py
C:/doit/game/sound/echo.py
# echo.py
def echo_test():
print("echo")
C:/doit/game/graphic/__init__.py
C:/doit/game/graphic/render.py
# render.py
def render_test():
print("render")
** 생성한 패키지를 실행하기 전 game패키지를 참조할 수 있도록 명령 프롬포트 창에서
set 명령어로 PYTHONPATH 환경 변수에 디렉토리 추가 필요
- 패키지 안의 함수 실행
1) echo 모듈을 import 해서 실행하기
echo 모듈은 echo.py 파일이다.
import game.sound.echo
game.sound.echo.echo_test()
>> echo
2) echo 모듈이 있는 디렉터리까지 from.. import 실행
from game.sound import echo
>> echo.echo_test() echo
3) echo 모듈의 echo_test 함수를 직접 import 하기
from game.sound.echo import echo_test
echo_test()
>> echo
※ import game을 수행하면 game 디렉터리의 __init__.py에 정의된 것만 참조 가능
** import game.sound.echo.echo_test 함수 사용 불가
● __init__.py 용도
__init__.py 파일은 해당 디렉터리가 패키지의 일부임을 알려주는 역할을 한다.
만약 gaem, sound, graphic 등 패키지에 포함된 디렉터리에 __init__.py 파일이없다면 패키지로 인식 불가하다.
** python 3.3 버전부터 __init__.py 파일이 없어도 패키지로 인식된다.
'Language > Python' 카테고리의 다른 글
| Python - 모듈 (0) | 2024.05.08 |
|---|---|
| Python - 클래스 (0) | 2024.05.07 |
| Python - 프로그램의 입력과 출력 (0) | 2024.05.07 |
| Python - 파일 읽고 쓰기 (0) | 2024.05.07 |
| Python - 사용자 입/출력 (0) | 2024.05.07 |

















































































