Blog Analityczny. Narzędzia. Techniki. Rozwiązania Analityczne.

Środowisko wirtualne w Pythonie

07.2022 | Python | Virtyualenv | Programowanie

Konieczna praktyką przy pracy w Pythonie jest operowanie środowiskiem wirtualnym.

Czym zatem jest środowisko wirtualne?

Środowisko wirtualne jest, jak czysta kartka tzn. Jest to zamknięte środowisko programistyczne, które tworzymy od zera I które nie wpływa na globalna instalację Pythona, czy na globalnie zainstalowane pakiety. Jeżeli takie środowisko przestanie nam być potrzebne, to możemy - podobnie do wyrwania kartki - je usunąć z systemu.

Środowisko wirtualne tworzymy dla konkretnego projektu, czy programu. Każdy projekt powinien korzystać z własnego środowiska.

Dlaczego koniecznie powinniśmy korzystać z środowiska wirtualnego?

  • Środowisko wirtualne pozwala zainstalować I utrzymać wybrane pakiety, w wymaganych wersjach dla danego projektu czy programu
  • Środowisko wirtualne pozwala utrzymać czystość naszej implementacji, poprzez zainstalowanie tylko tych pakietów, które są wymagane dla danego projektu.
    • Wylistowanie pakietów z danego środowiska możemy zrealizować poprzez komendę pip freeze => wynik zostanie wyświetlony w terminalu
    • Możemy również wykorzystać komendę pip freeze >> 'requirements.txt' => w tym przypadku, wynik zostanie zapisany do pliku
    • Korzystając z tak zapisanego pliku można łatwo zainstalować wymagane pakiety w kolejnym - nowym - środowisku wirtualnym pip install -r /path/to/requirements.txt
  • Środowisko wirtualne pozwala nam dowolnie eksperymentować z różnymi pakietami I ich różnymi wersjami - możemy testować, kasować, zmieniać bez konsekwencji

Utworzenie środowiska

Pierwszą czynnością jest utworzenie środowiska wirtualnego:

python -m venv venv

Nastepnie aktywujemy środowisko wirtualne:

Przykład dla wersji Windows 11.

./venv/Scripts/activate

Jeżeli mamy aktywowane środowsiko wirtualne, to możemy przejść do zainstalowania pakietów, które będą dostepne tylko w tym danym środowisku wirtualnym:

Przykład: instalacja pakietu shiny

pip install shiny

Wylistowanie zainstalowanych pakietów:

pip freeze

Jako wynik otrzymamy listę zainstalowanych pakietów - zobacz na poniższym, zbiorczym fragmencie kodu.

Wylistowanie zainstalowanych pakietów i zapisanie ich w pliku requirements.txt:

pip freeze >> requirements.txt

Na koniec informacja o tym jak dezaktywować środowisko wirtualne:

deactivate

Aby całkowicie usunąć środowisko wirtualne, to wystarczy je zwyczajnie skasować.

Pełny kod omawianego przypadku: