| General
차이점 구분 | |||
구분 | import __ | from 모듈 import * | from 모듈 import __ |
설명 | 모듈을 불러오는 것 | 모듈로부터 모두(*) import | 모듈로부터 특정한 것만 import |
형태 | 모듈 이름 | 함수 이름 (단독) | 모듈 이름, 함수 이름 |
추가 사항 : 패키지 혹은 모듈 둘 다 |
| 왜 import, from import를 구분해서 쓸까?
1개 이상의 패키지에서 함수명이 중복이 될 때 오류를 방지하기 위함
from numpy import *
from math import *
exp([1,3,5]) # numpy의 exp 함수를 의도했다면 오류
이럴 때
1. 패키지 명을 포함한 함수 형태를 사용 ( Ex. numpy.exp() )
2. 필요한 함수만 from import로 따로 가져오는 방법 ( Ex. from numpy import exp )
을 통해서 오류 방지
| Example_Code
# import 패키지
import math
import numpy as np #패키지 별칭 사용 가능
math.exp(1,3,5)
np.exp([1,3,5])
# from 패키지 import 함수
from numpy import exp
from numpy import array as ar #함수 별칭 사용 가능
exp([1,3,5])
ar(11)
# from 패키지 import *
# exp뿐만이 아닌 모든 함수를 가져온 것
# numpy 패키지에서 exp 함수만 가져온 것
from numpy import exp
+
모듈은 누군가 만든 파이썬 파일(.py)이며, 이것을 모아둔 폴더를 패키지라고 한다.
모듈 안에는 함수뿐만 아닌, 변수나 클래스도 존재하고 가져다 쓸 수 있다.
Reference :
1. https://coding-kindergarten.tistory.com/73
2. http://cloudrain21.com/python-difference-between-import-from-import
'[Programming] > [Dig]' 카테고리의 다른 글
[Dig] 다중상속문제 (=다이아몬드 문제 ) | Multiple Inheritance (0) | 2022.06.27 |
---|---|
[Dig] 개발자, 기술 트렌드 놓치지 않는 법 (0) | 2022.06.26 |
[Dig] 디자인 패턴 ( Design Pattern ) / GoF (4) | 2022.05.29 |
[Dig] 쿼리문 ( Query ) (1) | 2022.05.23 |
[Dig] 맵핑 ( Mapping ) (1) | 2022.05.07 |