Package
package란, 사용자가 직접 .py 로 파일을 만든 것을 module이라 하며, 이 module들이 만나서 directory 구조를 가지는 것이 package라고 할 수 있다.
package는 절대경로와 상대경로가 존재한다.
2020/03/11 - [language/python] - Python : module, package, library, framework
Python : module, package, library, framework
module vs package 예시 - keras __init__.py (./keras) from __future__ import absolute_import from . import utils from . import activations from . import applications from . import backend from . impo..
mambo-coding-note.tistory.com
package가 뭔지 잘 와닿지 않는다면, 위의 posting을 참조하자.
상대경로
from ..ToolSet import BasicTool
from ..paper_class.text_mining import Paper_BeautifulSoup, Paper_Selenium
상대경로는 linux에서 하는 것 처럼, module들의 경로들을 directory 처럼 나타낸 것이다.
- 물론 절대경로보다 짧고 간결하지만, 나중에 package 단위가 커지면 커질수록 헷갈릴 수 있다.
- py file을 옮기면, 바로 error를 송출한다.
절대경로
from utils.ToolSet import BasicTool
from paper_class import Paper_BeautifulSoup, Paper_Selenium
위 code는 내가 직접 만든 package에서 절대경로를 써서 import 한 code이다.
보통 유명한 라이브러리를 보면, 보통 절대경로로 만들어져있다.
- 길긴하지만, debugging이 굉장히 쉽고, 직관적이다.
- package 단위가 크더라도 효율적으로 관리하기 편하다
따라서 나는 package를 관리할 때는, 절대경로로 하는 것을 매우 추천한다.
파이썬 - import가 module과 package 를 찾아가는 경로
파이썬에서는 import를 활용해 현재 작성하고 있는 파일 바깥의 패키지 및 모듈을 불러와 그 안에 있는 요소들을 가져다 쓸 수 있는데요, 이때 파이썬이 어떻게 패키지와 모듈이 있는 곳을 찾아나서는지 정리해 보고자 합니다. module과 package를 찾아가는 순서 > Module이란 변수나 함수, 클래스 등을 모아놓은 파일로, 다른 파일에서 재 사...
velog.io
'대학원 공부 > programming language' 카테고리의 다른 글
| Web : 웹페이지 보안 (0) | 2020.05.09 |
|---|---|
| Web : 정적 page VS 동적 page (0) | 2020.05.09 |
| Python : @property, @function.setter (0) | 2020.05.04 |
| Python : raise (0) | 2020.04.21 |
| Python : inheritance, 상속 : 부모 class 자식 class (0) | 2020.04.21 |
댓글