파이썬 상위 하위 폴더에 있는 파일 import 하기
파이썬에는 패키지 import 말고 내가 만든 파일을 불러 올 수 있다.
가끔 사용하면 종종 헷갈리는데 이번에 확실하게 익혀보자.
- from import 차이
- 같은 폴더에 있는 파일 import
- 하위 폴더에 있는 파일 import
- 상위 폴더에 있는 파일 import
1. 그냥 import와 from import 차이
패키지를 불러 올 때 import를 사용하는데,
from 패키지 import 메서드 를 사용하면 매번 패키지명을 입력하는 번거로움을 줄일 수 있다.
# 1.import
import datetime
datetime.timedelta(days=3, hours=10, minutes=23)
# 2.from import
from datetime import timedelta
timedelta(days=3, hours=10, minutes=23)
1번과 2번 차이점이 있다.
2. 같은 폴더에 있는 파일 import
-folder1
--aaa.py
--bbb.py
위와 같이 folder1에 aaa.py 파일과 bbb.py 파일이 같이 있는 경우,
aaa.py에서 bbb.py를 불러오고 싶을 때
import bbb
# 참 쉽죠
3. 하위 폴더에 있는 파일 import
-folder1
--aaa.py
--bbb.py
--folder2
---ccc.py
위와 같이 folder1 안에 있는 folder2에 ccc.py 파일이 있는 경우,
aaa.py에서 ccc.py를 불러오고 싶을 때
from folder2 import ccc
# 폴더를 패키지로 생각하면 쉽다
4. 상위 폴더에 있는 파일 import
-folder1
--aaa.py
--bbb.py
--folder2
---ccc.py
반대로
ccc.py에서 aaa.py를 불러오고 싶을 때
import sys, os
sys.path.append(os.path.dirname(os.path.abspath(os.path.dirname(__file__))))
import aaa
절대 경로 참조하는 코드를 넣으면 folder2와 같은 선상에 있는 aaa.py와 bbb.py를 import 할 수 있다.
-folder1
--aaa.py
--bbb.py
--folder2
---ccc.py
--folder3
---ddd.py
그렇다면, folder2와 같은 선상에 있는 folder3 안에 ddd.py 있는 경우,
ccc.py에서 ddd.py를 불러오고 싶을 때
import sys, os
sys.path.append(os.path.dirname(os.path.abspath(os.path.dirname(__file__))))
from folder3 import ddd
마찬가지로 절대 경로 참조하는 코드를 넣어 folder2와 같은 선상에 있는 folder3를 import 할 수 있게 되어
ddd.py도 불러 올 수 있게 된다.
'PYTHON > python 기초' 카테고리의 다른 글
[python] datetime, timestamp 차이 및 완벽 정리 (0) | 2022.03.08 |
---|---|
[python] with as 사용법 (0) | 2021.02.09 |
[python] 매직메소드 __init__ (0) | 2021.02.09 |
[python] 주피터 노트북 사용법 및 단축키 (0) | 2020.05.19 |
댓글