Python이 패키지를 찾는 방법
관련 권장 사항: "python video"
이제 모든 사람의 컴퓨터에는 하나의 Python뿐만 아니라 더 많은 가상 환경이 있을 가능성이 높으며 이로 인해 패키지 설치 문제가 발생합니다. , 실수로 설치 패키지의 경로에 주의하는 것을 잊었습니다. 먼저, 가방 찾는 문제를 풀어보겠습니다. 이 질문에 대한 답은 매우 간단하지만, 많은 사람들이 이 원리를 모르고 있습니다. Python 인터프리터의 경로가
현재 작업 디렉터리(pwd 명령의 반환 결과)
여기서 Linux에서 기본 Python을 사용하는 경우
여러 유용한 함수
sys.executable 현재 사용되는 Python 인터프리터 경로
sys.path 현재 패키지의 검색 경로 목록
sys.prefix 현재 사용되는
예:
>>> import sys >>> sys.executable'/home/frostming/.pyenv/versions/3.7.2/bin/python' >>> sys.path ['', '/home/frostming/.pyenv/versions/3.7.2/lib/python37.zip', '/home/frostming/.pyenv/versions/3.7.2/lib/python3.7', '/home/frostming/.pyenv/versions/3.7.2/lib/python3.7/lib-dynload', '/home/frostming/.local/lib/python3.7/site-packages', '/mnt/d/Workspace/pipenv', '/home/frostming/.pyenv/versions/3.7.2/lib/python3.7/site-packages'] >>> sys.prefix'/home/frostming/.pyenv/versions/3.7.2'
환경 변수를 사용하여 검색 경로 추가
패키지 경로가 위에 나열된 검색 경로 목록에 없으면 PYTHONPATH 환경 변수에 경로를 추가할 수 있습니다. (Windows의 경우;)
하지만 주의하세요. PYTHONPATH=/home/frostming/.local/lib/python2.7/site-packages와 같이 다양한 Python 버전의 패키지 경로를 PYTHONPATH에 추가하지 마세요. 기본 검색 경로, Python 3을 사용하는 경우 호환성 문제가 발생합니다.
그런데 PATH는 실행 가능한 프로그램을 찾는 데 사용되는 검색 경로입니다. 터미널에서 my_cmd 명령을 실행하면 시스템은 경로에 my_cmd가 있는지 확인하기 위해 PATH의 경로를 검색하므로 메시지가 표시됩니다. 찾을 수 없다는 프로그램이나 명령어를 인식할 수 없다면 PATH에 해당 경로가 추가되었는지 확인해야 합니다.
Python 패키지 설치 방법
요즘 Python 패키지 설치에는 pip가 기본적으로 사용됩니다. Pipenv나 poem을 사용하더라도 맨 아래 계층은 여전히 pip이므로 항상 적용 가능합니다. pip를 설치하지 않은 경우 여기를 참조하세요. pip를 설치했지만 여전히 pip 명령을 사용할 수 없는 경우 이전 섹션을 참조하세요.
pip를 실행하는 방법에는 두 가지가 있습니다.
pip ... python -m pip ...
첫 번째 방법과 두 번째 방법은 비슷합니다. 차이점은 첫 번째 방법에서 사용되는 Python 인터프리터가 일반적으로 pip 경로로 작성된다는 것입니다.
그런 다음 사용자 정의 구성을 추가하지 않고 pip를 사용하여 패키지를 설치하면
pip
--prefix PATH에서 설치 위치를 변경하는 옵션,
virtual Environment
가상 환경은 서로 다른 종속성 패키지를 격리하는 것입니다. 종속성 충돌 문제를 방지하기 위해 서로 다른 경로에 설치됩니다. Python이 패키지를 설치하는 방법을 이해하고 나면 가상 환경(virtualenv, venv 모듈)의 원리를 이해하는 것은 어렵지 않습니다. 실제로 virtualenv myenv를 실행하면 새로운 Python 인터프리터가 myenv/bin에 복사되고 myenv/lib, myenv/lib/pythonX.Y/site-packages와 같은 디렉터리가 생성됩니다(venv 모듈은 복사에 사용되지 않지만 결과는 기본적으로 동일합니다). 소스 myenv/bin/activate를 실행하면 myenv/bin이 PATH 앞에 삽입되므로 복사된 Python 인터프리터가 먼저 검색됩니다. 이런 방식으로 나중에 패키지를 설치할 때
요약
여기서 패키지 경로 검색에서 가장 중요한 것은
이제 처음의 세 가지 질문으로 돌아가서 문제를 해결할 수 있나요? 댓글 영역에 문제 해결 단계나 해결 방법을 작성하세요.
이 문서의 예는 모두 Unix 경로 규칙을 사용합니다. Windows 시스템인 경우 적절하게 변경해야 합니다. 예를 들어
위 내용은 Python으로 설치된 패키지를 찾는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!