Package
package란, 사용자가 직접 .py 로 파일을 만든 것을 module이라 하며, 이 module들이 만나서 directory 구조를 가지는 것이 package라고 할 수 있다.
package는 절대경로와 상대경로가 존재한다.
2020/03/11 - [language/python] - Python : module, package, library, framework
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를 관리할 때는, 절대경로로 하는 것을 매우 추천한다.
'대학원 공부 > 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 |
댓글