import와 from ~ import 차이
from [패키지] import [메서드]
를 사용하면 매번 패키지명.메서드
로 입력하는 번거로움을 줄일 수 있습니다.# import [패키지]
import datetime
datetime.timedelta(days=3, hours=10, minutes=23)
# from [패키지] import [메서드]
from datetime import timedelta
timedelta(days=3, hours=10, minutes=23)
같은 폴더에 있는 모듈 import하는 법
.
└── folder1
├── a.py
└── b.py
a.py
모듈에서 b.py
모듈을 불러오고 싶을 때import b
하위 폴더에 있는 파일 import
.
└── folder1/
├── a.py
├── b.py
└── folder2/
└── c.py
a.py
모듈에서 c.py
모듈을 불러오고 싶을 때from folder2 import c
# 폴더를 패키지로 생각하면 됩니다.
상위 폴더에 있는 파일 import
.
└── folder1/
├── a.py
├── b.py
└── folder2/
└── c.py
c.py
에서 a.py
를 볼러오고 싶을 때import sys, os
sys.path.append(os.path.dirname(os.path.abspath(os.path.dirname(__file__))))
import a
.
└── folder1/
├── a.py
├── b.py
├── folder2/
│ └── c.py
└── folder3/
└── d.py
c.py
에서 d.py
를 불러오고 싶을 때import sys, os
sys.path.append(os.path.dirname(os.path.abspath(os.path.dirname(__file__))))
from folder3 import d
d.py
도 불러올 수 있습니다.