Ubuntu ja pyenv: Lihtne Pythoni versioonihaldus arendajatele

1. Sissejuhatus

Kui arendate Ubuntu keskkonnas Pythoniga, võib eri projektide jaoks olla vaja erinevaid Python versioone. Sellisel juhul on versioonihaldustööriist pyenv väga kasulik. Selles artiklis selgitatakse, kuidas hallata Ubuntu süsteemis lihtsalt mitut Python versiooni kasutades pyenv-i.

Miks on Python versioonihaldus oluline?

Pythoni versioonid arenevad igal aastal — lisanduvad uued funktsioonid ja turvapaigad, kuid mõned programmid töötavad ainult vanemate versioonidega. Seetõttu on tõhusaks arenduseks oluline, et saaksid lihtsalt kasutada konkreetsele projektile vajalikku versiooni.

Ubuntu ja pyenvi kombinatsiooni eelised

Ubuntu on väga populaarne operatsioonisüsteem arendajatele ning Python keskkonna seadistamine on sujuv. Pyenv-i kasutamine Ubuntu peal võimaldab hõlpsalt paigaldada erinevaid Python versioone ning neid kiiresti vahetada ilma süsteemikeskkonda rikkumata, muutes arenduskeskkonna haldamise lihtsaks.

2. Mis on pyenv?

Pyenv on tööriist, mis võimaldab lihtsalt hallata mitut erinevat Python versiooni ühel ja samal süsteemil. Varem tuli konkreetset Pythoni versiooni kasutada kogu süsteemis, kuid pyenv võimaldab paigaldada versioone kasutaja- või projekti-põhiselt, muutes versioonihalduse väga lihtsaks.

Pyenvi põhilised funktsioonid

  • Mitme versiooni haldus: Võimaldab paigaldada ja kasutada mitut Python versiooni ühes süsteemis korraga.
  • Versioonide vahetamine: Saad hõlpsalt valida iga projekti jaoks erineva Python versiooni.
  • Virtuaalkeskkondade integreerimine: Kasutades tööriistu nagu venv või pyenv-virtualenv, saad mugavalt hallata ka virtuaalkeskkondi.

Miks on pyenv kasulik?

Arenduskeskkondades võib juhtuda, et ühes projektis tuleb kasutada uut, teises vana Pythoni versiooni. Pyenv aitab sellistes olukordades väga hästi ning võimaldab lihtsalt vahetada versioone, vältides probleemide tekkimist projektide vahelise ühilduvusega.

3. Kuidas paigaldada pyenv Ubuntu peale

Enne pyenv-i paigaldamist tuleb paigaldada mõned vajalikud sõltuvuspaketid. Need on vajalikud, et pyenv töötaks korrektselt.

Vajalike sõltuvuspakettide paigaldamine

Paigalda vajalikud paketid järgmise käsuga:

sudo apt update
sudo apt install make build-essential libssl-dev zlib1g-dev 
libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm 
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev 
libffi-dev liblzma-dev

Pyenv-i paigaldamine

Järgmisena paigalda pyenv. Kõige levinum viis on kloonida see otse GitHub-ist.

curl https://pyenv.run | bash

Keskkonnamuutujate seadistamine

Selleks, et pyenv töötaks õigesti, lisa järgmised read faili ~/.bashrc (või ~/.zshrc).

export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"

Nüüd on pyenv paigaldus valmis. Taaskäivita shell või kasuta käsku source ~/.bashrc, et muudatused jõustuksid.

4. Pythoni versioonide paigaldamine ja haldamine

Pärast pyenv-i paigaldamist saad nüüd paigaldada Pythoni versioone. Pyenv abil saad kiiresti paigaldada soovitud versiooni ja vajadusel seda vahetada.

Pythoni versioonide vaatamine ja paigaldamine

Kuva paigaldatavate Pythoni versioonide nimekiri:

pyenv install --list

Vali nimekirjast soovitud versioon ja paigalda see näiteks nii:

pyenv install 3.10.8

Versiooni vahetamine

Et määrata globaalne Pythoni versioon, kasuta järgmist käsku:

pyenv global 3.10.8

Kui soovid konkreetse kataloogi jaoks määrata versiooni, kasuta pyenv local käsku:

pyenv local 3.10.8

Nii saad paindlikult hallata projektide jaoks vajalikke Pythoni versioone.

5. Virtuaalkeskkondade loomine pyenv-iga

Lisaks pyenv-ile tasub kasutada virtuaalkeskkondi, mis võimaldavad iga projekti jaoks iseseisvat Pythoni keskkonda. Virtuaalkeskkonnad võimaldavad mugavalt hallata sõltuvusi ja pakette ilma teisi projekte mõjutamata.

Kasutades venv-i

Ubuntu-s saab kasutada standardset Pythoni moodulit venv virtuaalkeskkonna loomiseks:

python -m venv .venv

Virtuaalkeskkonna aktiveerimiseks kasuta:

source .venv/bin/activate

Virtuaalkeskkonna deaktiveerimiseks kasuta:

deactivate

Virtuaalkeskkonnad teevad iga projekti sõltuvuste haldamise väga lihtsaks.

6. pyenv-i tõrkeotsing

pyenv-i kasutamisel võib tekkida olukordi, kus mõne versiooni paigaldamine ebaõnnestub või PATH seadistus pole õige. Siin on levinumad probleemid ja nende lahendused.

Levinumad vead ja lahendused

  1. Versiooni paigaldamine ebaõnnestus: Kui mõni vajalik sõltuvuspakett puudub, võib paigaldamine katkeda. Sellisel juhul paigalda puuduvad paketid käsuga sudo apt install.
  2. PATH pole õigesti seadistatud: Kui Pythoni versioon ei vahetu õigesti, kontrolli, et ~/.bashrc failis on PATH korrektselt seadistatud. Muudatuste jõustamiseks kasuta source ~/.bashrc.

7. Täpsemad seadistused ja kasutusviisid

Kui oled pyenv-i põhikasutusega harjunud, saad edasi liikuda täpsemate seadistuste ja töövoogudeni. Selles sektsioonis selgitame, kuidas kasutada pluginaid ning integreerida teisi paketihaldureid, et arenduskeskkonda veelgi tugevamaks muuta.

pyenv-virtualenv kasutamine

pyenv toetab pluginaid ja üks levinumaid on pyenv-virtualenv. Sellega saad veelgi paremini hallata erinevaid virtuaalkeskkondi. pyenv virtualenv võimaldab hallata mitut keskkonda korraga, luues igale projektile oma keskkonna.

pyenv-virtualenv paigaldamise sammud:

  1. Veendu, et pyenv on paigaldatud.
  2. Paigalda pyenv-virtualenv järgmise käsuga:
git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
  1. Loo virtuaalkeskkond ja aktiveeri see järgmiste käskudega:
pyenv virtualenv 3.10.8 myenv
pyenv activate myenv
  1. Virtuaalkeskkonna deaktiveerimiseks kasuta pyenv deactivate.

Integratsioon teiste paketihalduritega

Arendades Ubuntu keskkonnas, kasutatakse sageli koos pyenv-iga ka muid paketihaldustööriistu. Näiteks Homebrew ja Miniconda aitavad paigaldada muid raamistikke ja raamatukogusid.

  • Homebrew integratsioon: Kuigi Homebrew on tuntud Maci kasutajatele, saab seda kasutada ka Ubuntu peal. Pyenv-i paigaldamiseks Homebrew’ga kasuta järgmist käsku:
brew install pyenv
  • Miniconda integratsioon: Miniconda on kergekaaluline Pythoni paketihaldur. Koos pyenv-iga saad igale keskkonnale määrata erinevad Pythoni versioonid ja paketid. pyenv install abil saab paigaldada ka Miniconda.

8. Kokkuvõte

Selles artiklis tutvustasime, kuidas kasutada pyenv-i Ubuntu peal Pythoni keskkonna haldamiseks. Keskendusime mitme versiooni paigaldamisele, virtuaalkeskkondade loomisele ning tõrkeotsingule.

Pythonプログラミングの世界

目次 1 1. pyenvとは?1.1 Pythonバージョン管理の課題1.2 pyenvの利点1.3 pyenvの仕組…