ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Touch System Python.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ System Python?
System Python – ΡΡΠΎ Python, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ Π²Π°ΡΠ΅ΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ.
ΠΠΎΡΠ΅ΠΌΡ Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΈΠΊΠΎΡΠ½ΡΡΡΡΡ ΠΊ ΡΡΠΎΠΌΡ?
ΠΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈΡΠΈΠ½ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ System Python.
- ΠΠ΅ Π²Π΅ΡΡΠΈΡ Python, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΈΡΠ΅ΡΠ΅. ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ, Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΡ Python 3.9, Π½ΠΎ Π²Π°ΡΠ° ΠΠ‘ Π±ΡΠ»Π° ΡΠΎΠ»ΡΠΊΠΎ Ρ 3,8.
- ΠΠΎ Π²ΡΠ΅ΠΌ ΠΌΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡΠ²Π°Π΅Ρ Ρ ΠΎΡΠΎΡΠ΅ΠΉ ΠΈΠ΄Π΅Π΅ΠΉ, ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π·Π°ΡΡΠ°Π²ΡΡ Π²Π°Ρ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΎΠΊ Π² Π²ΠΎΡΠΊΡΠ΅ΡΠ΅Π½ΡΠ΅ ΡΡΡΠΎΠΌ.
- ΠΠ°ΡΠ° ΠΠ‘ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ Python, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΡ Π²Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π΅ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΠΎΠΉ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π²Π°ΠΌ ΡΠ΄Π°Π»ΠΎΡΡ ΡΠ»ΠΎΠΌΠ°ΡΡ Python.
Pyenv
ΠΡΠΎΡΡΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠ΅ΠΉ Python.
ΠΡΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½Π°ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ Python ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π΅ Π΄Π»Ρ Π½Π°ΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΡΡΠΎΠ±Ρ Π½Π°ΠΌ Π½Π΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΊΠ°ΡΠ°ΡΡΡΡ System Python.
Pyenv/Pyenv
ΠΡΠΎΡΡΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΡΠΌΠΈ Python
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Pyenv
ΠΠΎΡΡΡΠΎΠΈΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ
Pyenv ΡΠΎΠ·Π΄Π°Π΅Ρ Python ΠΈΠ· Source, ΠΏΠΎΡΡΠΎΠΌΡ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ±ΠΎΡΠΊΠΈ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Pyenv. ΠΡΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π²Π°ΡΡΠΈΡΡΡΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ.
ΠΠ°ΠΊΠΈ
brew install openssl readline sqlite3 xz zlib
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ Ρ Π²Π°Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π²Π°ΡΠ΅Π²Π° Π½Π° ΠΌΠ°ΡΠΈΠ½Π΅.
ΠΠ΅Π±ΡΠ½
sudo apt-get 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
ΠΠ»Ρ Π΄ΡΡΠ³ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ ΠΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΈΠΎΠ½Π½ΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ ΠΠ½ΠΊΠ΅Ρ
Pyenv
curl https://pyenv.run | bash
ΠΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Pyenv-Installer ΠΡΠΎΠ΅ΠΊΡ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Pyenv Π² Π²Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²Π΅ΡΡΠΈΠΈ Python
ΠΡΠΎΠ²Π΅ΡΡΡΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ:
pyenv install --list
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΡ Python
pyenv install -v 3.9.5
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²Π΅ΡΡΠΈΠΈ Python
Pyenv ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²Π΅ΡΡΠΈΡ Python Π²ΠΎ Π²ΡΠ΅ΠΌ ΠΌΠΈΡΠ΅, Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ Π² Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΈ Π΄Π°ΠΆΠ΅ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ.
ΠΡ Ρ
ΠΎΡΠΈΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²Π΅ΡΡΠΈΡ Python Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΡΠ½ΡΠΉ
ΠΠ½ΠΊΠ΅Ρ
ΠΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½Π°Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ Π½Π΅ΠΌΡ.
mkdir quotes-scraper && cd quotes-scraper
Π Π·Π°ΡΠ΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΡ Python, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
pyenv local 3.9.5
ΠΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ .python-version
Π€Π°ΠΉΠ» Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΠ»ΠΈ Pyenv Π°ΠΊΡΠΈΠ²Π΅Π½ Π² Π½Π°ΡΠ΅ΠΉ ΡΡΠ΅Π΄Π΅, ΡΡΠΎΡ ΡΠ°ΠΉΠ» Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π°ΠΊΡΠΈΠ²ΠΈΡΡΠ΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ Python Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
ΠΠ°Π΄Π΅ΡΡΡ, Π²Ρ Π½Π°ΡΠ»ΠΈ ΡΡΠΎΡ ΠΏΠΎΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ. ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΎΡΡΠ°Π²ΡΡΠ΅ Π»ΡΠ±ΡΠ΅ ΠΎΡΠ·ΡΠ²Ρ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ ΠΈΠ»ΠΈ DM Me @tintin_das Π² Π’Π²ΠΈΡΡΠ΅ΡΠ΅ π¦.
ΠΡΠΈΠ³ΠΈΠ½Π°Π»: “https://dev.to/tintindas/real-world-python-environmet-setup-pyenv-3c0o”