>  기사  >  백엔드 개발  >  프로젝트 모듈의 이름이 같은 경우 표준 라이브러리에서 가져오는 방법은 무엇입니까?

프로젝트 모듈의 이름이 같은 경우 표준 라이브러리에서 가져오는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-07 05:44:02883검색

How to Import from the Standard Library When a Project Module Has the Same Name?

프로젝트 모듈의 이름이 같은 경우 표준 라이브러리에서 가져오기(Python의 모듈 검색 경로 제어)

Python의 다목적 가져오기 시스템을 사용하면 표준 라이브러리뿐만 아니라 프로젝트 디렉토리 내. 그러나 프로젝트의 모듈이 표준 라이브러리 모듈과 이름이 같은 경우 충돌이 발생할 수 있습니다.

문제:

표준 라이브러리 Calendar 클래스를 다음에서 가져올 수 없습니다. 캘린더 모듈이 포함된 프로젝트 내에서 오류가 발생합니다. 캘린더 가져오기를 시도하는 중 캘린더는 대신 프로젝트 모듈에서 가져옵니다.

해결책(절대 가져오기):

모듈 이름을 바꾸지 마세요. 대신 Python 2.5 이상에서 사용할 수 있는 Python의 절대 가져오기 기능을 활용하세요.

from __future__ import absolute_import
import socket

Python 3.x에서는 절대 가져오기가 기본 동작입니다. Pylint는 경고를 표시할 수 있지만 코드는 유효합니다.

설명:

절대 가져오기는 Python이 모듈을 찾아야 하는 위치를 명시적으로 지정하고 일반적으로 다음을 포함하는 기본 검색 경로를 재정의합니다. 프로젝트 디렉토리. Absolute_import를 선언함으로써 Python은 동일한 이름을 가진 프로젝트 모듈을 고려하기 전에 표준 라이브러리를 검색합니다.

위 내용은 프로젝트 모듈의 이름이 같은 경우 표준 라이브러리에서 가져오는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.