-
๐Packages
๋ชจ๋-> ํจ์, ํด๋์ค, ๋ณ์ ๋ฑ์ ์งํฉ
ํจํค์ง->๋ชจ๋์ ๋ชจ์๋์ ํด๋. ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํจ.ํ์ด์ฌ ํจํค์ง=๋๋ ํฐ๋ฆฌ+ํ์ด์ฌ ๋ชจ๋
ํจํค์ง ๊ตฌ์กฐ๋ฅผ ์ด์ฉํ์ฌ ํ๋ก๊ทธ๋จ์ ์์ฑํ ๋ ๊ณต๋ ์์ , ์ ์ง ๋ณด์๊ฐ ์ ๋ฆฌํ๋๋กgame/ #game ํจํค์ง. ๋ฃจํธ ๋๋ ํฐ๋ฆฌ __init__.py sound/ #์๋ธ ๋๋ ํฐ๋ฆฌ __init__.py echo.py #ํ์ด์ฌ ๋ชจ๋ wav.py graphic/ #์๋ธ ๋๋ ํฐ๋ฆฌ __init__.py scree.py render.py
๐ ํจํค์ง ์์ฑํ๊ธฐ
ํจํค์ง ๊ธฐ๋ณธ ๊ตฌ์ฑ ์์
- ์ํน ๋๋ ํฐ๋ฆฌ์ gqme ๋๋ ํฐ๋ฆฌ, ์๋ธ ๋๋ ํฐ๋ฆฌ ์์ฑ
- ๊ฐ ๋๋ ํฐ๋ฆฌ์ ๋ด์ฉ์ด ์๋ __init__.py ํ์ผ ์์ฑ
- ๋๋ ํฐ๋ฆฌ ์์ ๋ชจ๋ ํ์ผ๋ค (echo.py, wav.py ๋ฑ) ์์ฑ
#echo. py def echo_test: print("echo") game ๋๋ ํฐ๋ฆฌ ์์ sound ๋๋ ํฐ๋ฆฌ ์์ echo.py ์์ echo_test ํจ์๋ฅผ ์คํ
๐ ํจํค์ง ์คํํ๊ธฐ
(1) echo ๋ชจ๋์ import
import game.sound.echo game.sound.echo.echo_test() #echo ์ถ๋ ฅ๋จ.
(2) echo ๋ชจ๋์ด ์๋ ๋๋ ํฐ๋ฆฌ๋ฅผ 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 ์ถ๋ ฅ๋จ.
๋ถ๊ฐ๋ฅํ ์ผ์ด์ค
from game import game.sound.echo.echo_test()
'.' ๋ํธ๋ฅผ ์ฌ์ฉํด์ importํ ๋ ๊ฐ์ฅ ๋ง์ง๋ง ํญ๋ชฉ์ ๋ฐ๋์ ๋ชจ๋ ๋๋ ํจํค์ง์ฌ์ผ ํจ.
๐__init__.py
ํด๋น ๋๋ ํฐ๋ฆฌ๊ฐ ํจํค์ง์ ์ผ๋ถ์์ ์๋ ค์ฃผ๋ ์ญํ
pythom 3.3 ๋ฒ์ ์ด์ ์๋ ๋๋ ํฐ๋ฆฌ์ init.pyํ์ผ์ ํฌํจํ์ง ์์ผ๋ฉด ํจํค์ง๋ก ์ธ์๋์ง ์๋๋ค. (์ง๊ธ์ ์ธ์)from game.sound import * echo.echo_test() #์ค๋ฅ ๋ฐ์ ํน์ ๋๋ ํฐ๋ฆฌ์ ๋ชจ๋์ *์ ์ฌ์ฉํด์ importํ ๋ __init__.py ํ์ผ์ __all__ ๋ณ์ ์ค์ #sound ๋๋ ํฐ๋ฆฌ์ __init__.py __all__=[echo] sound ๋๋ ํฐ๋ฆฌ์์ * ๊ธฐํธ๋ฅผ ์ฌ์ฉํ์ฌ importํ๋ฉด echo๋ชจ๋์ด import๋๋ค๋ ์๋ฏธ. all๊ณผ ์๊ด์์ด ๋ฌด์กฐ๊ฑด import๋๋ ๊ฒฝ์ฐ from a.b.c import *์์ c๊ฐ ๋ชจ๋์ธ ๊ฒฝ์ฐ
relative ํจํค์ง
- ๊ฐ์ ํจํค์ง ์์ ์๋ ์๋ธ ๋๋ ํฐ๋ฆฌ์ ๋ชจ๋์ด ๋ค๋ฅธ ์๋ธ ๋๋ ํฐ๋ฆฌ์ ๋ชจ๋์ ์ฌ์ฉํ๊ณ ์ถ์ ๋
#์ ์์ ์ render.py from game.sound.echo import echo_test # frome ..sound.echo import echo_test๋ก ๋์ฒด๊ฐ๋ฅ -> relativeํ import ..์ render.py ํ์ผ์ ๋ถ๋ชจ ๋๋ ํฐ๋ฆฌ๋ฅผ ์๋ฏธ def render_test(): print("render") echo_test() render_test๋ฅผ ์คํํ๋ฉด echo_test์ ๊ธฐ๋ฅ์ ์ํ
relativeํ ์ ๊ทผ์
- .. ๋ถ๋ชจ ๋๋ ํฐ๋ฆฌ, . ํ์ฌ ๋๋ ํฐ๋ฆฌ
'๐ญ Study > : Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๐ปPython ํ์ด์ฌ] zip() ํจ์์ iterable ์๋ฃํ์ ๋ํด ์์๋ณด์! (1) 2024.02.09 ๐ปPython:: Class (1) 2024.01.26 ๐ปPython:: input & File (1) 2024.01.26 ๐ปPython :: function ํจ์ (0) 2024.01.26 ๐ปPython:: Module (0) 2024.01.25 ๋๊ธ