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

Python을 사용한 가상 환경 생성

<시간/>

Python 기반 응용 프로그램을 개발하는 동안 특정 버전의 Python 패키지가 필요할 수 있습니다. 그러나 이 버전의 동일한 패키지가 시스템 전체에 사용되도록 설치되면 다른 응용 프로그램의 요구 사항과 충돌할 수 있습니다. 따라서 호환성 문제를 해결하기 위해 각 목적에 대해 나란히 환경을 갖는 것이 바람직합니다.

가상 환경을 사용하면 Python 패키지를 전역적으로 설치하는 대신 특정 응용 프로그램에 대해 격리된 위치에 설치할 수 있습니다.

파이썬의 표준 라이브러리에 있는 venv 모듈은 가상 환경을 만드는 데 사용됩니다. 가상 환경은 Python 인터프리터 및 기타 스크립트의 자체 사본이 있는 파일 시스템의 디렉토리입니다. 다음 명령은 명명된 디렉터리에 가상 환경을 만듭니다.

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

지정된 대로 생성된 새 디렉터리를 찾을 수 있습니다. 위는 선택적으로 다음 스위치를 사용할 수 있습니다.

--system-site-packages
가상 환경에 시스템 사이트 패키지 디렉토리에 대한 액세스 권한을 부여합니다.
--symlinks
사본이 아닌 심볼릭 링크를 사용하십시오.
--사본
심볼릭 링크 대신 복사본을 사용하십시오.
--clear
환경 디렉토리의 내용이 있는 경우 삭제
--업그레이드
이 버전의 Python을 사용하려면 환경 디렉토리를 업그레이드하십시오.
--pip 없음
가상 환경에서 pip 설치 또는 업그레이드 건너뛰기(pip는 기본적으로 부트스트랩됨)

ENV_DIR(이 경우 testenv) 아래의 '스크립트' 폴더에는 Python 인터프리터, pip 설치 프로그램 및 환경을 활성화 및 비활성화하는 스크립트의 로컬 복사본이 들어 있습니다.

activate
activate.bat
activate.ps1
deactivate.bat
easy_install-3.7.exe
easy_install.exe
pip.exe
pip3.7.exe
pip3.exe
python.exe
pythonw.exe

가상 환경 활성화

격리된 환경에서 Python을 시작하려면 먼저 Python을 활성화해야 합니다. 이를 위해 명령줄에서 'activate.bat'를 호출해야 합니다.

E:\testenv>scripts\activate

(testenv) E:\testenv>python
Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

가상 환경의 이름은 DOS 프롬프트 왼쪽의 괄호 안에 나타납니다. 이제 가상 환경에서 Python을 사용할 수 있습니다.

가상 환경의 스크립트 폴더에 pip3 유틸리티를 사용하여 패키지를 설치하면 로컬로 설치되며 시스템 전체에서 사용할 수 없습니다.

가상 환경 비활성화

일반 환경으로 돌아가려면 스크립트 폴더의 'deactivate.bat'를 사용하여 가상 환경을 비활성화해야 합니다.

>>> quit()

(testenv) E:\testenv>scripts\deactivate
E:\testenv>

Python 3.3 이전 버전의 경우 별도로 설치해야 하는 virtualenv를 사용하세요.

venv 모듈은 프로그래밍 방식으로 가상 환경을 생성하기 위해 EnvironmentBuilder 클래스를 정의했습니다.