기본적으로 두 개의 파이썬 프로젝트가 있는데 하나는
myapp/screening
아래에 있습니다.
그리고 다른
myapp/server
. 현재
server
를 개발 중입니다
screening
에서 함수를 가져오고 싶습니다.
myapp.screening
사용
.
내 폴더 구조는 다음과 같습니다 :
myapp/
screening/
screening-env/
myapp/
__init__.py
screening/
__init__.py
screening_task.py
submodule1/
# __init__.py and ub module files
submodule2/
# __init__.py and sub module files
submodule3/
# __init__.py and sub module files
tests/
# __init__.py and test scripts
setup.py
server/
server-env/
myapp/
__init__.py
server/
__init__.py
server_task.py
tests/
__init__.py
server_test.py
이 답변 에 따라 프로젝트를 구성했습니다.
내 pyzwyz 기본적으로 다음과 같습니다.
setup.py
from setuptools import setup
setup(
name='myapp-screening',
version='0.1.0',
packages=[
'myapp.screening',
'myapp.screening.submodule1',
'myapp.screening.submodule2',
'myapp.screening.submodule3'
],
)
를 활성화했습니다
server-env
로 이동하여 상영 프로젝트를 설치했습니다.
(
myapp/screening/
와 같은 디렉토리
) 및
setup.py
를 실행
.
마지막으로,
python setup.py develop
그리고
server_test.py
다음과 같습니다 :
server_task
from myapp.screening.screening_test import foo
foo()
를 실행할 때
또는
python -m myapp.server.server_task
나는 얻는다 :
python -m test.server_test
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'myapp.screening'
를 실행중인 경우이 오류가 의미가 있습니다.
지역
python -m myapp.server.server_task
때문에
존재하고설치된
myapp
를 덮어 쓸 수 있습니다.
그것은
myapp
를 포함
모듈.
screening
에서 물건을 가져 오는 방법이 있습니까
screening
사용
?!
from myapp.screening.screening_task import foo
-
답변 # 1
관련 자료
- r - xml2에서 이름이 같은 노드를 반환
- c# - 다른 지역에서 같은 이름의 컨트롤러
- html - 동일한 이름의 CSS 2 개 클래스를 개별적으로 호출
- command line - 동일한 파일 이름을 가진 파일 삭제
- node.js - 노드 코어 모듈을 가져 오면 Karma 테스트가 중단됩니다 (@ open-wc/testing-karma 사용)
- javascript - 한 키에 같은 키를 가진 객체를 표시
- json - 파이썬 파일간에 모듈 가져 오기
- sql - 동일한 ID로 행 병합
- mysql - 동일한 ID와 조건으로 행을 업데이트하는 방법은 무엇입니까?
- 엘릭서와 함께하고 시도/구조가 동일 할 수 있습니다
- reactjs - babel-plugin-react-css-modules로 클래스 이름을 찾을 수 없습니다
- javascript - 다른 파일에서 같은 이름의 함수를 호출하는 방법
- javascript - 이름이 같은 Ajax 파일 다운로드
- javascript - 같은 클래스로 클릭
- javascript - 객체 이름은 변수와 동일
- netbeans - 같은 이름의 파일을 구별하는 방법?
- javascript - 모듈을 가져 오는 깨끗한 방법이 있습니까?
- python - 변수 업데이트 및 가져 오기 모듈의 변경
- javascript - 동일한 키 값 데이터를 가진 객체
- 파이썬에서 SQL 파일 이름과 동일한 이름의 CSV 파일을 얻는 방법
따라서 더 많은 연구를 한 후에 같은 이름의 파이썬 모듈을 가져 오는 비슷한 (질문과 같은) 질문을 발견했으며 어떻게 파이썬에서 네임 스페이스 패키지를 만들 수 있습니까?
"같은 이름의 모듈을 가져 오기"에 대한 대답은 하나의 모듈 이름을 바꾸거나 프로젝트 디렉토리를 패키지로 바꾸라는 말 때문에 유용하지 않습니다.
다른 질문은 내가 원하는 것입니다. 그것은 기본적으로
pkgutil
에 대해 이야기합니다. 지정된 네임 스페이스에 모듈을 '추가'할 수 있습니다.일부 경우 (이와 같은 경우)에 대해이 기술에 대한 의견을 이해하고 공유하지만 여기에 제시되기 때문에 때때로 분리 된 구조를 원하므로 모든 것을 원하지 않는 경우에도 모든 것을 패치하지 않습니다