sourcecode

virtualenv에서 PYTHONPATH에 경로를 추가하는 방법

codebag 2023. 9. 15. 20:59
반응형

virtualenv에서 PYTHONPATH에 경로를 추가하는 방법

특정 가상 Env 환경에서만 볼 수 있는 PYTHONPATH 환경 변수에 경로를 추가하려고 합니다.

나는 노력했다.SET PYTHONPATH=...virtualenv 명령 프롬프트 아래에 있지만, 이는 전체 환경에 대한 변수를 설정합니다.

어떻게 하면 그것을 이룰 수 있을까요?

일반적으로 파일을 사용하면 파이썬패스(PYTHONPATH)를 사용하지 않아도 됩니다.확장자가 .pth인 파일(모든 기본 이름이 작동함)을 가상 Env의 사이트 패키지 폴더에 넣기만 하면 됩니다.lib\python2.7\site-packages, 당신의 패키지를 포함하는 디렉토리의 절대 경로를 그것의 유일한 내용으로 합니다.

사용하시는 경우virtualenv, virtualenvwrapper를 사용해야 할 수도 있습니다. 이 경우 add2 virtualenv 명령을 사용하여 현재 virtualenv의 Python 경로에 경로를 추가할 수 있습니다.

add2virtualenv directory1 directory2 …

virtual envwrapper를 사용하는 경우,

$ cd to the parent folder
$ add2virtualenv  folder_to_add

콘솔이 표시됩니다.

Warning: Converting "folder_to_add" to "/absoutle/path/to/folder_to_add"

그게 다야, 그리고 너는 잘 가야만 해.

가상 환경 중 하나에 symlink를 연결해 볼 수도 있습니다.

예를 들어 1) virtualenv를 활성화하고 python을 실행하고 python 3) import sys를 확인하고 sys.path 4) python 검색 경로를 찾을 수 있습니다.사이트 패키지(예: 사이트 패키지) 5) 중 하나를 선택하여 다음과 같이 패키지에 대한 symlink를 만듭니다. ln -s path-to-your-package name-with-with-importing

그러면 가상 Env를 활성화하지 않고도 가져올 수 있습니다.path-to-your-virtual env-folder/bin/python을 시도하고 패키지를 가져옵니다.

import sys
import os

print(str(sys.path))

dir_path = os.path.dirname(os.path.realpath(__file__))
print("current working dir: %s" % dir_path)

sys.path.insert(0, dir_path)

virtual env 및 virtual envrapper를 사용하여 경로를 혼란시키지 않도록 하는 것이 좋습니다.

어떤 수단을 사용하든 파이썬패스를 변경하는 것이 어떤 형태의 링크를 통해 원하는 패키지를 추가하는 것보다 덜 우아하다는 대부분의 답변에 동의합니다.하지만 그러한 링크를 추가하는 가장 좋은 방법은 다음과 같습니다.pip install -e /path/to/your/lib(물론 가상 Env를 활성화한 후).이것은 또한 다음을(를) 생성합니다..egg-link적절한 사이트 검색 디렉토리에 파일을 저장하므로 올바른 방법을 찾기 위한 정교한 방법이 필요하지 않습니다.site-packagesdir. 그리고 가상 env 전용 도구를 설치할 필요가 없습니다.

사람들이 위에서 지적했듯이, 이것은 PYTHONPATH를 변경하는 것과 완전히 같지는 않습니다. 왜냐하면 이것은 prepend가 아니라 sys.path에 적용되기 때문입니다. 하지만 많은 시나리오에서는 무관하기 때문입니다.

위 와 같이 @crimemister 한, 을 사용할 수 .virtualenvwrapper그리고나서add2virtualenv만약 @Aneesh Panol가한..add2virtualenv다음 이후에 작동하지 않습니다.pip install virtualenvwrapper, 그리고 여기 @markinosky가 투표한 상위 답변의 지시를 따릅니다.저한테는 통합니다.

Python 3.9를 사용하는 가상 환경에 Box2d를 설치하는 데 문제가 있었습니다.

을 입니다.pip install swig수다칠수로고dseoynns. .pip install box2d

언급URL : https://stackoverflow.com/questions/10738919/how-do-i-add-a-path-to-pythonpath-in-virtualenv

반응형