내 Vagrant VM과 통신하기 위해 Python 플러그인 및 원격 통역사 기능 과 함께 IntelliJ를 사용하고 있습니다. 내 VM의 인터프리터를 사용하도록 원격 인터프리터를 올바르게 설정합니다. 그러나 VM에서 사용자 지정 PYTHONPATH를 사용하고 IntelliJ가 해당 경로를 인식하고 개발할 때 해당 경로에 모듈을 포함하기를 바랍니다.
VM에서 사용자 지정 PYTHONPATH를 사용하도록 IntelliJ / PyCharm의 원격 인터프리터를 구성하려면 어떻게해야합니까?
답변
답변
PYTHONPATH를 편집하거나 코드 검사를위한 가져 오기 해결 문제를 수정하는 방법은 다음과 같습니다.
- 환경 설정을 엽니 다 (Mac에서 키보드 단축키는
⌘,
).
-
를 찾아
Project Structure
왼쪽 아래에있는 사이드 바에서Project: Your Project Name
-
오른쪽 사이드 바에서 모듈 추가 또는 제거
편집 : PyCharm 4.5에 대한이 스크린 샷을 업데이트했습니다.
답변
나에게 해결책은
Run > Edit Configuration > Defaults > Python
그런 다음 관리
- “PYTHONPATH에 콘텐츠 루트 추가”및
- “PYTHONPATH에 소스 루트 추가”
확인란과 “작업 디렉토리”필드 설정.
자체 실행 / 디버그 구성을 설정 한 경우 다음으로 이동하는 것이 좋습니다.
Run > Edit Configuration > Python > [Whatever you called your config]
거기에서 편집하십시오.
내 문제는 PyCharm 2016.2 프로젝트에 전체 저장소를 포함하고 싶었지만 하위 폴더 만 실제 파이썬 소스 코드 루트였습니다. 폴더를 마우스 오른쪽 버튼으로 클릭하여 “소스 루트”로 추가 한 다음
Mark directory as > Source Root
그런 다음 실행 / 디버그 구성 메뉴에서 “Add content roots to PYTHONPATH”를 선택 취소하고 “Add source root to PYTHONPATH”를 선택합니다. 그런 다음 다음을 수행하여 폴더 경로를 확인했습니다.
import sys
logger.info(sys.path)
결과는 다음과 같습니다.
[
'/usr/local/my_project_root/my_sources_root',
'/usr/local/my_project_root/my_sources_root',
'/usr/lib/python3.4', '/usr/lib/python3.4/plat-x86_64-linux-gnu',
'/usr/lib/python3.4/lib-dynload',
'/usr/local/lib/python3.4/dist-packages',
'/usr/lib/python3/dist-packages'
]
그러나 수정 없이는 다음과 같이 말했습니다.
[
'/usr/local/my_project_root/my_sources_root',
'/usr/local/my_project_root', <-- NOT WANTED
'/usr/lib/python3.4',
'/usr/lib/python3.4/plat-x86_64-linux-gnu',
'/usr/lib/python3.4/lib-dynload',
'/usr/local/lib/python3.4/dist-packages',
'/usr/lib/python3/dist-packages'
]
즉, 프로젝트 루트 폴더가 포함되어 있습니다. 이것은 나를 위해 경로를 엉망으로 만들었습니다.
답변
답변
최신 버전의 Pycharm (예 : 2019.2)에 대해 제공된 정답 phil에 대한 업데이트 입니다.
파일> 설정으로 이동 하여 프로젝트를 찾은 다음 프로젝트 인터프리터 를 선택 합니다. 이제 선택한 프로젝트 인터프리터의 오른쪽에있는 톱니 바퀴가있는 버튼을 클릭합니다 (예전에는 … ).
드롭 다운 메뉴에서 모두 표시 …를 선택 하고 열리는 대화 상자에서 폴더와 두 개의 하위 폴더가있는 아이콘을 클릭합니다.
현재 인터프리터 경로가있는 대화 상자가 표시되면 + 를 클릭하여 하나를 더 추가합니다.
답변
내 경험상 PYTHONPATH 변수를 사용하는 것은 Windows에서 VENV와 잘 작동하지 않기 때문에 일반적으로 잘못된 접근 방식입니다. 로드시 PYTHON은 경로 앞에 PYTHONPATH를 추가하여 경로를 준비합니다. 그러면 신중하게 준비된 Venv가 우선적으로 전역 사이트 패키지를 가져올 수 있습니다.
PYTHON 경로를 사용하는 대신 관련 사이트-패키지 디렉토리에 pythonpath.pth 파일을 포함합니다 (사용자 지정 python은 때때로 다른 위치에서 찾습니다. 예를 들어 python.exe와 동일한 디렉토리에서 .pth 파일을 찾습니다). 각 가상 환경. 이것은 PYTHONPATH처럼 작동 할 것입니다. 단지 파이썬 설치에 한정 될 것입니다. 그래서 여러분은 각 파이썬 설치 / 환경에 대해 별도의 것을 가질 수 있습니다. Pycharm은 VENV의 python을 python 설치로 사용하면 VENV와 강력하게 통합됩니다.
예를 참조하십시오 이 SO 질문 …. .pth 파일에 대한 자세한 내용을