문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판이전 판다음 판 | 이전 판 | ||
| python:home [2024/11/13 13:49] – [python] taekgu | python:home [2025/04/17 14:54] (현재) – [python] taekgu | ||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| + | ====== python ====== | ||
| + | 이제는 오래된 언어인가? | ||
| + | |||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | |||
| + | * [[python: | ||
| + | * [[python: | ||
| + | |||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | * [[python: | ||
| + | ===== 제어문 ===== | ||
| + | |||
| + | * [[python: | ||
| + | * [[python: | ||
| + | |||
| + | |||
| + | ====== 파이썬 가상 환경 구성 ====== | ||
| + | |||
| + | 아직 버전별로 무슨 차이가 있는지 python2, python3의 차이는 많이 있는 것같은데, | ||
| + | python2는 호환성을 위해서 사용하는 듯.. 현재는 대부분 python3를 사용하는 것으로 개인적으로 생각된다. | ||
| + | |||
| + | ===== python을 컴파일하기 위해서 필수 ===== | ||
| + | * make gcc git | ||
| + | |||
| + | |||
| + | * zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libssl-dev libffi-dev liblzma-dev lzma-dev | ||
| + | * ncurses-doc readline-doc sqlite3-doc liblzma-doc | ||
| + | |||
| + | |||
| + | * tk-dev ==> Tk toolkit | ||
| + | * freetype2-doc libx11-doc libxcb-doc libxext-doc tcl-doc tcl-tclreadline tcl8.6-doc tk-doc tk8.6-doc | ||
| + | ==== pyenv을 이용한 가상환경 구축 ==== | ||
| + | |||
| + | === 1)pyenv === | ||
| + | |||
| + | * 파이썬 버전을 관리하는 툴. | ||
| + | * 하나의 컴퓨터에 다양한 파이썬 버전을 설치하고 관리. | ||
| + | * 프로젝트 홈페이지: | ||
| + | |||
| + | === 2)pyenv-virtualenv === | ||
| + | * virtualenv은 파이썬 환경을 격리하는 툴. | ||
| + | * pyenv-virtualenv은 pyenv의 확장 플러그인. | ||
| + | * 파이썬 버전과 라이브러리의 완전한 격리 환경을 제공. | ||
| + | |||
| + | <code bash> | ||
| + | brew install pyenv | ||
| + | brew install pyenv-virtualenv | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | $ 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:// | ||
| + | $ cd ~/.pyenv && src/ | ||
| + | |||
| + | $ git clone https:// | ||
| + | $ echo 'eval " | ||
| + | </ | ||
| + | |||
| + | <code bash .bashrc> | ||
| + | export PYENV_ROOT=" | ||
| + | export PATH=" | ||
| + | if command -v pyenv 1>/ | ||
| + | eval " | ||
| + | eval " | ||
| + | fi | ||
| + | </ | ||
| + | |||
| + | <code bash .zshrc> | ||
| + | export PYENV_ROOT=/ | ||
| + | if which pyenv > /dev/null; then eval " | ||
| + | if which pyenv > /dev/null; then eval " | ||
| + | if which pyenv-virtualenv-init > /dev/null; then eval " | ||
| + | |||
| + | export PYENV_VIRTUALENV_DISABLE_PROMPT=1 | ||
| + | </ | ||
| + | |||
| + | * pyenv 설치버전확인 | ||
| + | <code bash> | ||
| + | pyenv versions | ||
| + | pyenv version | ||
| + | </ | ||
| + | <code bash> | ||
| + | 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/ | ||
| + | * marox (set by PYENV_VERSION environment variable) | ||
| + | < | ||
| + | |||
| + | pyenv global 3.10.6 | ||
| + | pyenv virtualenv 3.10.6 maro | ||
| + | pyenv virtualenv-delete maro | ||
| + | pyenv uninstall 3.9.7 | ||
| + | </ | ||
| + | === 3)autoenv === | ||
| + | * autoenv는 디렉터리 이동 시 실행되는 스크립트 | ||
| + | * pyenv-virtualenv 사용 시 불편한 수작업을 자동화. | ||
| + | * 특정 프로젝트 폴더로 들어가면 .env파일 실행하여 가상환경 활성화. | ||
| + | * 별소용없을 듯 합니다. | ||
| + | |||
| + | === 4)pip === | ||
| + | * 파이썬 라이브러리를 관리. | ||
| + | <code bash> | ||
| + | python -m pip install --upgrade pip | ||
| + | </ | ||
| + | |||
| + | ====== Ubuntu, | ||
| + | |||
| + | ===== github에서 받기 ===== | ||
| + | |||
| + | <code bash> | ||
| + | git clone https:// | ||
| + | |||
| + | git clone https:// | ||
| + | |||
| + | </ | ||
| + | |||
| + | <code bash .zshrc> | ||
| + | export PYENV_ROOT=" | ||
| + | export PATH=" | ||
| + | eval " | ||
| + | </ | ||
| + | ===== 설치 ===== | ||
| + | |||
| + | <code bash> | ||
| + | % sudo apt python3 python3-virtualenv python3-pip | ||
| + | </ | ||
| + | |||
| + | pip버젼확인과 pip업그레이드 | ||
| + | <code bash> | ||
| + | python3 -m pip install --user --upgrade pip | ||
| + | |||
| + | python3 -m pip --version | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | 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 | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | git clone https:// | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | export PYENV_ROOT=" | ||
| + | export PATH=" | ||
| + | eval " | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | curl -L https:// | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | pyenv virtualenv 3.12.2 maro | ||
| + | </ | ||
| + | |||
| + | |||