어떤 파일을 어떻게 편집합니까? 가상 환경을 만들었습니다.
virtualenvwrapper
명령입니다. 의 일부가 아닙니다 virtualenv
.
어떤 파일을 어떻게 편집합니까? 가상 환경을 만들었습니다.
virtualenvwrapper
명령입니다. 의 일부가 아닙니다 virtualenv
.
답변:
# 2 수정
정답은 @arogachev의 것 입니다.
PYTHONPATH
virtualenv 에서 사용되는 것을 변경하려면 virtualenv의 bin/activate
파일에 다음 행을 추가 할 수 있습니다 .
export PYTHONPATH="/the/path/you/want"
이렇게하면 PYTHONPATH
이 virtualenv를 사용할 때마다 새 항목 이 설정됩니다.
편집 : (@RamRachum의 의견에 대답하기 위해)
에 원래 값으로 복원하려면 deactivate
다음을 추가하십시오.
export OLD_PYTHONPATH="$PYTHONPATH"
앞서 언급 한 줄 앞에 다음 줄을 bin/postdeactivate
스크립트에 추가합니다 .
export PYTHONPATH="$OLD_PYTHONPATH"
deactivate
됩니까?
PYTHONPATH
virtualenv 로컬 경로 대신 기본값 (전역 환경)을 가지고 있음을 의미 합니까?
@ s29의 댓글이 답이어야합니다.
가상 환경에 디렉토리를 추가하는 한 가지 방법은 virtualenvwrapper (많은 작업에 유용함)를 설치 한 다음 수행하는 것입니다.
mkvirtualenv myenv
workon myenv
add2virtualenv . #for current directory
add2virtualenv ~/my/path
이 경로를 제거하려면 파일을 편집하십시오. myenvhomedir/lib/python2.7/site-packages/_virtualenv_path_extensions.pth
virtualenvwrapper에 대한 문서는 http://virtualenvwrapper.readthedocs.org/en/latest/ 에서 찾을 수 있습니다.
이 기능에 대한 특정 문서는 http://virtualenvwrapper.readthedocs.org/en/latest/command_ref.html?highlight=add2virtualenv 에서 찾을 수 있습니다.
add2virtualenv -d
.pth
검색 할 디렉터리가 포함 된 파일을 만들어 디렉터리에 배치 할 수 site-packages
있습니다. 예 :
cd $(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")
echo /some/library/path > some-library.pth
효과는 추가와 동일 /some/library/path
로 sys.path
하고, 지방에 남아 virtualenv
설정.
$VIRTUALENV_ROOT/lib/pythonX.Y/site-packages
있습니다. .pth 파일에 대한 문서 : docs.python.org/3.6/library/site.html
pushd "$(venv/bin/python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")" ...path/to/project/venv/lib/python3.7/site-packages ...path/to/project echo ../../../../src > my_project.pth popd
그런 다음 virtualenv를 비활성화하고 다시 활성화했습니다. 이제 내 프로젝트 디렉토리가 어디에 있는지 알아야하는 프로젝트 코드를 실행할 수 있습니다.
/bin/activate
)를 수정 하는 것은 잘못된 행위이며 타사 도구를 설치하는 것은 기본 제공 방식을 사용하는 것보다 열등합니다.
파일 .virtualenvrc
이 현재 디렉토리에있는 경우 파일을 소싱하고 PYTHONPATH
활성화 / 비활성화시 저장 / 복원하도록 활성화 스크립트를 수정 했습니다 .
activate
여기 에서 패치 된 스크립트를 찾을 수 있습니다 . . virtualenv 1.11.6에 의해 생성 된 활성화 스크립트의 드롭 인 대체품입니다.
그런 다음 내 다음과 같은 내용을 추가했습니다 .virtualenvrc
.
export PYTHONPATH="${PYTHONPATH:+$PYTHONPATH:}/some/library/path"
여기에 이미 답변되어 있습니다-> 내 가상 환경 (python)으로 인해 PYTHONPATH가 중단됩니까?
"export PYTHONPATH = / usr / local / lib / python2.0"을 ~ / .bashrc 파일에 추가하고 "source ~ / .bashrc"OR ". ~ / .bashrc"를 입력하여 소싱합니다.
1) 제어판으로 이동 2) 시스템을 두 번 클릭합니다. 3) 고급 탭으로 이동합니다. 4) 환경 변수를 클릭합니다.
시스템 변수 창에서 PYTHONPATH라는 변수가 있는지 확인하십시오. 이미있는 경우 올바른 디렉토리를 가리키는 지 확인하십시오. 아직없는 경우 새로 만들기 버튼을 클릭하여 만듭니다.
또는 코드 아래에서 수행 할 수도 있습니다.
import sys
sys.path.append("/home/me/mypy")