from import의 차이가 궁금합니다.

조회수 572회

모듈을 import할 때 2가지 모듈을 import할지, from import를 할지 선택할 수 있는데, 이것이 어떤 차이점을 가지고 있는지 궁금합니다.

어차피 불러오는 코드 자체에는 변함이 없는데, 둘 중 어느것이 더 이점을 주는 방식인지 알고 싶습니다.(모듈 호출 속도가 빨라진다던지)

아니면 그저 명령코드를 단축시키는 용도뿐인건가요??

import time

time.sleep(10)
from time import sleep

sleep(10)

2 답변

  • 실험해본 결과 모듈호출 속도가 빨라지지는 않습니다

    명령코드를 단축시키려는 용도로만 사용되는것 같습니다

    • (•́ ✖ •̀)
      알 수 없는 사용자
    • 속도 면에서는 차이가 없나 보군요. 감사합니다. 초보자 2021.12.11 10:06
  • 제 생각에는 import 의 속도 차이가 아닐까 싶네요.

    from ~ import ~는 해당 라이브러리에서 특정 모듈 부분만 import 하는 명령이며, import는 그냥 라이브러리 전체를 import 하는 기능입니다.

    단순히 sleep만을 쓰려는 목적이라면 time 라이브러리를 import 하건 sleep부분만 from import 하건 속도 상으로 거의 차이는 없을 겁니다. 하지만 여러 개의 클래스들을 연계하여 작성하거나 어떤 라이브러리로 부터 또 다른 라이브러리를 작성해야 할 땐 필요 없는 기능까지 import하는 건 속도 저하를 일으킬 수 있기 때문에 최적화를 위해 딱 필요한 부분만 import 한다고 보시면 되겠습니다.

    • 정신님께서 확인하신 결과 속도 차이는 없다고 했었는데, 이게 단순히 작업 명령 실행 시간 기준인지, 모듈 import 과정을 포함한건지는 모르니.. 이 부분도 참고해보겠습니다. 초보자 2021.12.13 14:20

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)