> 백엔드 개발 > 파이썬 튜토리얼 > 'import *'는 Python에서 __init__.py를 가져오나요?

'import *'는 Python에서 __init__.py를 가져오나요?

Linda Hamilton
풀어 주다: 2024-12-10 08:10:10
원래의
1027명이 탐색했습니다.

Does

Python에서 "import *" 가져오기는 무엇이며 __init__.py와 어떻게 관련됩니까?

Python에서 "import * " 문은 지정된 모듈의 모든 비공개(즉, 밑줄로 시작하지 않는) 기호를 현재 모듈로 가져옵니다. 이렇게 하면 모듈 이름 접두사를 사용하지 않고 가져온 기호에 직접 액세스할 수 있습니다.

"import *"가 __init__.py를 가져오나요?

아니요, "import *" 문은 포함 폴더에 있는 __init__.py 파일을 자동으로 가져오지 않습니다. __init__.py는 Python이 모듈을 가져올 때 모듈을 초기화하는 데 사용하는 특수 파일입니다. __init__.py를 명시적으로 가져오려면 다음과 같이 모듈 이름과 함께 "import" 문을 사용해야 합니다.

from project.model import __init__
로그인 후 복사

"import *"의 장점과 단점:

"import *"의 가장 큰 장점은 모든 기호를 한 번에 가져올 수 있다는 편리성입니다. 그러나 이 방법은 일반적으로 다음과 같은 이유로 권장되지 않습니다.

  • 네임스페이스 충돌: 가져온 기호가 현재 모듈의 기존 기호와 충돌할 수 있습니다.
  • 비효율성 : 많은 수의 기호를 가져오면 속도가 느려질 수 있습니다.
  • 명시적인 문서 부족: "*"를 사용할 때 가져온 기호의 출처를 추적하기 어려울 수 있습니다.

우선 사례 :

"import *" 대신 필요한 특정 기호만 가져오는 것이 좋습니다. 이 작업은 다음 중 하나를 사용하여 수행할 수 있습니다.

  • 명시적 가져오기:

    from math import pi
    로그인 후 복사
  • 모듈 별칭 지정:

    import math as m
    로그인 후 복사

하위 모듈 및 "import *":

모듈에 하위 모듈이 포함된 경우 "import *"는 all 속성에 명시적으로 포함되지 않는 한 이러한 하위 모듈을 가져오지 마세요.

결론:

"import *"는 편리할 수 있지만 일반적으로 명시적인 가져오기 또는 모듈 별칭 지정을 선호하는 경우 권장되지 않습니다. __init__.py는 모듈을 초기화하는 데 사용되는 특수 파일로, "import" 문을 사용하여 별도로 가져와야 합니다.

위 내용은 'import *'는 Python에서 __init__.py를 가져오나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿