> 백엔드 개발 > 파이썬 튜토리얼 > Python의 중첩 폴더에서 모듈을 어떻게 가져올 수 있습니까?

Python의 중첩 폴더에서 모듈을 어떻게 가져올 수 있습니까?

Linda Hamilton
풀어 주다: 2024-12-23 09:10:45
원래의
547명이 탐색했습니다.

How Can I Import a Module from a Nested Folder in Python?

중첩 폴더에서 모듈 가져오기

Python에서는 프로젝트 내의 다른 폴더에서 파일을 가져오는 것이 어려울 수 있습니다. 시나리오와 해당 솔루션을 살펴보겠습니다.

질문:

다음 폴더 구조를 고려하세요.

application
├── app
│   └── folder
│       └── file.py
└── app2
    └── some_folder
        └── some_file.py
로그인 후 복사

라는 이름의 함수를 어떻게 가져올 수 있나요? file.py의 func_name some_file.py?

답변:

from application.app.folder.file import func_name을 사용하는 일반적인 접근 방식은 작동하지 않습니다. 이는 Python의 기본 가져오기 검색 경로에 하위 디렉터리가 포함되지 않기 때문입니다.

해결책:

이 제한 사항을 해결하려면 다음을 추가하여 런타임에 Python 검색 경로를 수정할 수 있습니다. 모듈을 가져오기 전에 원하는 디렉터리를 sys.path에 추가하세요. some_file.py의 예는 다음과 같습니다.

import sys
# Caution: path[0] is reserved for the script path or '' in REPL
sys.path.insert(1, '/path/to/application/app/folder')

import file
로그인 후 복사

이렇게 하면 가져온 모듈의 함수에 다음과 같이 액세스할 수 있습니다.

file.func_name()
로그인 후 복사

참고:

이 접근 방식은 매우 구체적인 시나리오를 위한 것입니다. 일반적으로 코드를 패키지로 구성하는 것이 모듈성과 유지 관리 용이성을 위해 더 선호되는 솔루션입니다.

위 내용은 Python의 중첩 폴더에서 모듈을 어떻게 가져올 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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