Python을 사용하면서 가장 시달리는 점은 사용하는 모듈이 각기 다른 버전에 뻗어있어 버전을 수시로 점검하고 스위칭해야 하는 점이 있다.
(공부도 할 겸)shell을 통해서 버전을 관리하는데, shell을 통해서 버전 관리가 가능하다면 모듈로 넘어가는 게 실무에서 편하고 쓰는 게 옳다.
pyenv를 어떻게 사용하며 shell을 통해서는 버전 관리를 어떻게 하는 지 정리해보자.
$ python3 -V
Python 3.9.15
$ which python
/Users/-/.pyenv/shims/python
먼저 현재 버전을 확인하자.
pyenv를 통해서 환경변수를 잡았기 때문에 경로가 pyenv로 보인다.
$ brew install pyenv
brew로 pyenv를 install한다.
$ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.zshrc
$ exec "$SHELL"
.zshrc
파일에서 스크립트를 추가해주도록 한다.
#penv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
해당 스크립트문을 적용한 .zshrc
파일이다.
해당 스크립트문이 있으면 성공! :clap:
$ pyenv install 3.9.15
pyenv 모듈을 통해 파이썬을 해당 버전으로 install 해보자.
해당 버전으로 환경변수를 잡는 것도 간단한 명령어로 가능하다.
$ pyenv global 3.9.15
$ pyenv versions
system
* 3.9.15 (set by /Users/jeonga-eun/.pyenv/version)
pyenv versions
를 통해서 현재 pyenv로 install한 python 버전 리스트를 볼 수 있다.
pyenv global
command를 통해서 원하는 버전으로 환경변수를 지정할 수 있다.
버전 관리를 할 때 바로 모듈을 쓰기 보다 shell 언어를 통해서 먼저 구조를 이해하고 모듈을 쓰는 게 좋다고 생각한다.
따라서 shell command를 통해 버전 관리를 하는 방법을 알아보고자 한다.
원리는 pyenv와 똑같다. shell command를 바닐라하게 하는 것일 뿐이다.
$ sudo nano ~/.zshrc
Password:
#Ptyhon PATH
export PATH="$PATH:/opt/homebrew/Cellar/python@3.10/3.10.4/bin"
이렇게 스크립트문을 추가하고 control+x
를 하여 에디터를 빠져온다.
$ source ~/.zshrc
이렇게 환경변수를 잡아주고 적용을 시키면 끝이다.
간단하게 말해서 .zshrc, .bash와 같은 파일은 shell의 configuration 파일이라고 할 수 있다.
shell을 실행할 때 필요한 config 파일이라고 하면 된다.
자세한 설명은... Zshrc File Explained in 10 Easy to Understand Points