Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

pip 설치 프로그램을 부트스트랩하는 Python

<시간/>

Python의 표준 배포판에 내장된 모듈 및 패키지 외에도 Python Package Index(https://pypi.org/)라는 Python 패키지 저장소에 타사 개발자의 많은 패키지가 업로드됩니다. 여기에서 패키지를 설치하려면 pip 유틸리티가 필요합니다. pip 도구는 독립적인 프로젝트이지만 Python 3.4부터 Python 배포판에서 부트스트랩되었습니다.

surepip 모듈은 기존 Python 설치에서 pip 부트스트랩을 지원합니다. 일반적으로 사용자는 명시적으로 사용할 필요가 없습니다. 단, 일반 설치나 가상 환경에서 pip 설치를 건너뛰면 필요할 수 있습니다.

다음 명령은 pip 유틸리티가 설치되지 않은 가상 환경을 생성합니다.

C:\python37>python -m venv --without-pip e:\testenv

가상 환경 디렉터리 아래의 scripts 폴더에는 pip 유틸리티가 포함되어 있지 않습니다. 이제surepip 모듈은 시스템 전체 설치에서 해당 버전을 사용하여 pip를 통합하는 데 사용됩니다. 최신 버전의 경우 '--upgrade' 지정

E:\testenv>scripts\python -m ensurepip --upgrade
Looking in links: C:\Users\acer\AppData\Local\Temp\tmpp1bb2lym
Collecting setuptools
Collecting pip
Installing collected packages: setuptools, pip
Successfully installed pip-18.1 setuptools-40.6.2

pip의 기본 설치는 다음 옵션으로 수정할 수 있습니다.

  • --루트

    − 현재 활성화된 가상 환경(있는 경우)의 루트 또는 현재 Python 설치의 기본 루트가 아닌 지정된 루트 디렉터리에 상대적인 pip를 설치합니다.

  • --사용자 − 현재 Python 설치에 대해 전역이 아닌 사용자 사이트 패키지 디렉토리에 pip를 설치합니다(이 옵션은 활성 가상 환경 내에서 허용되지 않음).

surepip 모듈은 다음 함수도 정의했습니다.

  • ensurepip.version() − 환경을 부트스트랩할 때 설치할 pip의 번들 버전을 지정하는 문자열을 반환합니다.

  • ensurepip.bootstrap() − 부트스트랩은 현재 또는 지정된 환경으로 pip합니다.

부트스트래핑 프로세스는 sys.path와 os.environ 모두에 부작용이 있습니다. 또한 부트스트랩 프로세스는 pip에 필요한 추가 모듈을 설치할 수 있지만 다른 소프트웨어는 이러한 종속성이 기본적으로 항상 존재한다고 가정해서는 안 됩니다.