목차

python

이제는 오래된 언어인가?

제어문

파이썬 가상 환경 구성

아직 버전별로 무슨 차이가 있는지 python2, python3의 차이는 많이 있는 것같은데, python2는 호환성을 위해서 사용하는 듯.. 현재는 대부분 python3를 사용하는 것으로 개인적으로 생각된다.

python을 컴파일하기 위해서 필수

pyenv을 이용한 가상환경 구축

1)pyenv

2)pyenv-virtualenv

  brew install pyenv
  brew install pyenv-virtualenv
$ sudo apt-get install curl git-core gcc make zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libssl-dev libffi-dev liblzma-dev lzma-dev
$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
$ cd ~/.pyenv && src/configure && make -C src
 
$ git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
.bashrc
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if command -v pyenv 1>/dev/null 2>&1; then
  eval "$(pyenv init -)"
  eval "$(pyenv virtualenv-init -)"
fi
.zshrc
export PYENV_ROOT=/usr/local/var/pyenv
if which pyenv > /dev/null; then eval "$(pyenv init --path)"; fi
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi
 
export PYENV_VIRTUALENV_DISABLE_PROMPT=1
pyenv versions
pyenv version
pyenv install --list
pyenv install 3.9.7
$ pyenv virtualenv 3.9.7 marox
$ pyenv shell marox
$ pyenv versions
  system
  3.9.7
  3.9.7/envs/marox
* marox (set by PYENV_VERSION environment variable)
 <-- pyenv shell marox에의해서 환경이 setting되었다고 표시 .python-version, .pyenv/version에 의해서도 설정된 경우 표시된다.
 
pyenv global 3.10.6
pyenv virtualenv 3.10.6 maro
pyenv virtualenv-delete maro
pyenv uninstall 3.9.7

3)autoenv

4)pip

python -m pip install --upgrade pip

Ubuntu,Debian에서의 python3, virtualenv, pip 사용

github에서 받기

git clone https://github.com/pyenv/pyenv.git ~/.pyenv
 
git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
.zshrc
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"

설치

% sudo apt python3 python3-virtualenv python3-pip

pip버젼확인과 pip업그레이드

python3 -m pip install --user --upgrade pip
 
python3 -m pip --version
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl git
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
pyenv virtualenv 3.12.2 maro