nan + nan = 2nan

[Python] 파이썬 가상 환경 실행 본문

Python

[Python] 파이썬 가상 환경 실행

2nan 2023. 3. 5. 13:58
728x90

 

가상 환경이란?


가상 환경은 독립된 공간을 만들어주는 기능이다.

파이썬을 사용해보면, pip로 설치하는 라이브러리들이 보통 site-packages 폴더 안에 저장이 되어 사용이 가능하게 된다. 

기본 pip로 설치한 패키지는 모든 파이썬 스크립트에서 사용이 가능한데, 여러 프로젝트를 개발할 경우에는 프로젝트 별로 패키지를 관리할 필요성이 생긴다.

예를 들어, 특정 파이썬 버전에 맞는 특정 라이브러리의 버전들이 존재하는데 다른 프로젝트에도 해당 패키지를 적용하게 된다면 호환성 문제 때문에 오류가 발생할 가능성이 크고 개발하는데 있어서 심히 스트레스를 받게 된다. 

그렇기 때문에, 프로젝트 별로 가상 환경을 달리하여 패키지를 관리한다면 호환성에 대한 문제에서 벗어날 수 있기에 이러한 습관을 들이는 것이 중요하다.

 

가상 환경 만들기


Environment

- Python 3.11.2

- VS Code

가상 환경은 파이썬이 설치된 환경이라면, 커맨드 명령어로 간단하게 생성이 가능하다.

다음은 Windows에서 가상 환경을 만드는 명령어이다.

Windows command prompt

# 1. Windows 명령 프롬프트 (Ctrl+R로 cmd 실행)

# 가상 환경 생성 (뒤의 .venv에 생성할 가상 환경 이름을 지정)
C:\project>python -m venv .venv

# call 명령어로 가상 환경 실행 (.venv는 자신의 가상 환경명)
C:\project>call .venv/Scripts/activate

# 앞에 (가상환경명)으로 변경된다면 가상 환경 실행 완료
(.venv) C:\project\>

처음에 해당 명령어를 VS code에서 바로 터미널을 열어 실행했을 때 제대로 되지 않아, 찾아본 결과 cmd가 아니라 기본이 Powershell로 되어 있어 해당 명령어가 실행되지 않았다. Powershell의 경우에는 다음과 같다.

Windows Powershell

# 2. Windows Powershell

# 위와 동일
PS C:\project> python -m venv .venv

# 해당 명령어에서 오류가 날 경우, Windows PowerShell을 관리자로 실행한 뒤 
# Set-ExecutionPolicy RemoteSigned를 입력하고 Y를 입력 후 다시 실행
PS C:\project> .venv\Scripts\Activate.ps1

(.venv) PS C:\project\.venv>

Mac의 경우에는 개인적으로 잘 사용하지는 않지만, 혹시 몰라 남겨본다.

Linux / MacOS

~$ python3 -m venv .venv
~/.venv$ source .venv/bin/activate
(.venv) ~/project$

 

이전에 사용할 때는 아나콘다를 주로 사용했어서, conda 명령어로 주로 사용했는데 아나콘다가 조금 무거운 감도 있고 귀찮아서 Python의 기본 기능인 venv를 활용하여 가상환경을 생성해보았다.

해당 가상 환경에서 작업이 완료된 후, 터미널 상에서 가상 환경 밖으로 나오고 싶다면?

(.venv) C:\Project>deactivate
C:\Project>

deactivate 명령어를 활용하여 나올 수 있다.

해당 명령어가 먹히지 않는다면, deactivate.bat 파일의 경로를 입력하여 실행시키면 빠져나올 수 있다.

Comments