Algorithm/정리

[Python] Import 위치

by somida 2021. 5. 15.

Python으로 프로그래머스 문제를 풀다 보면, 모듈을 import 할 때 두 가지의 방법이 있는데 꼭 맨 윗줄에 써야 하는 건지 궁금했다.

# 함수 내 모듈 삽입
def solution(num):
    from collections import deque
    ...
    return answer
# 함수 밖 모듈 삽입
from collections imort deque
def solution(nums):
    ...
    return answer

 

위의 두 방법 중 무엇이 옳고, 무엇이 빠를까..?

 

 

검색을 통해 찾아낸 결론은, 모듈은 함수를 여러번 실행해도 한 번만 import 되기 때문에

어디에 사용하든지 상관없다.

 

 모듈 맨 위에서 import를 하게 되면 컴파일러가 LOAD_GLOBAL하는 반면 함수 안에서는 LOAD_FAST해서 함수 안에서 실행하는 것이 더 빠르지만, 파이썬 가이드에서 import위치를 맨 위에 사용하라고 권장하기 때문에 위에 사용하는 것이었다.....!

 

 


References

 

import는 꼭 코드 맨 윗줄에 써야 하나요?

보통 모듈을 import할 때는 소스코드1보다는 소스코드2같이 맨 윗줄에 넣는 것 같던데이 클래스안에서만 쓰이는 모듈이라면 굳이 맨 윗줄에 import해 줄 필요는 없을 것 같은데 다들 맨 윗줄에서 imp

hashcode.co.kr

 

반응형

'Algorithm > 정리' 카테고리의 다른 글

[Java] Stack 사용  (0) 2023.01.08
[Java] 형 변환  (0) 2022.10.23
[Java] 문법, Method 정리  (0) 2022.10.22
[Python] 정규 표현식  (0) 2021.05.15

댓글