< Python

Python virtuális környezet

Szerző: Sallai András

Copyright © 2020, Sallai András

Licenc: CC BY-SA 4.0

Web: https://szit.hu

venv

Telepítés

Debian GNU/Linuxon szükséges telepíteni:

apt install python3-pip
apt install python3-venv

Windows operációs rendszeren a telepített Python tartalmazza a pip és a venv csomagot.

Virtuális környezet kezdése

python3 -m venv virtenv

A virtenv helyére írhatjuk saját könyvtár nevet is.

Ha elérhető a tree parancs, ellenőrizzük:

tree virtenv

tree -L virtenv

Aktiválás

Nézzünk bele a virtenv könyvtárba:

$ ls virtenv
$ which python3

Itt a which python-t csak azért futtatjuk, hogy legyen összehasonlítási alapunk a következő parancsoknál.

Aktiváljuk a virtuális környezetet:

$ source virtenv/bin/activate

Ellenőrzés:

(virtenv)$ which python
(virtenv)$ which py
(virtenv)$ pip list
(virtenv)$ echo $PATH

Példahasználat

Telepítsük például a Django 1.9-s verzióját:

(virtenv)$ pip install Django=1.9

Inaktiválás

(virtenv)$ deactivate

pipenv

A pipenv egy csomagkezelő és projekt-kezelő eszköz.

Függőségek

Python verzió ellenőrzése:

python --version

Legyen minimum 3.x.

A pip parancs ellenőrzése:

pip --version

Telepítés

pip install --user pipenv

Windowson útvonalba kell tenni:

C:\Users\janos\AppData\Roaming\Python\Python311\Scripts

Csomagok a projektünk számára

Ha nem vagyunk a projekt könyvtárában lépjünk be:

cd projekt01

pipenv install requests

A telepített csomag használata

import requests response = requests.get('https://httpbin.org/ip') print('Az IP címe: {0}'.format(response.json()['origin']))

Futtatás:

pipenv run python prog.py

A virtualenv

A virtualenv egy újabb lehetőség virtuális környezet létrehozására.

Telepítés

$ pip install virtualenv

Ellenőrzés:

$ python -m virtualenv --version

Használat

Virtuális környezet létrehozása a projektünkhöz:

$ cd projekt01
$ python -m virtualenv .venv

A virtuális környezet aktiválása:

$ source .venv/bin/activate

Aktiválás Windowson:

> .venv\Scripts\activate

Csomagok telepítése

(virtenv)$ pip install requests

Teszt

import requests response = requests.get('https://httpbin.org/ip') print('Az IP címe: {0}'.format(response.json()['origin']))

Futtatás:

(virtenv)$ python prog.py

Deaktiválás

(virtenv)$ deactivate

VSCode virtuális környezet

Ha van egy projektünk, akkor hozzáadhatunk virtuális környezetet VSCode-ban. A projekt gyökérkönyvtárában hozzuk létre a virtuális környezet könyvtárát:

python -m venv .venv

A .venv más könyvtárnév is lehet, ez választás kérdése.

Felugró ablak:

We noticed a new environment has been created. Do you
want to select it for the workspace folder?
Source: Python (Extendsion) [Yes] [No] [Do not show again]

Válaszoljunk Yes-el.

A terminál még nincs a virtuális környezetben, így továbbra sem azt használjuk. A terminált törüljük (ne csak egyszerűen kikapcsoljuk). Kérjünk egy új terminált. Ez már a virtuális környezetben fog megnyílni.

A várakozási jel ehhez hasonló kell legyen:

(.venv) PS C:\Users\janos\dev\app01>

A státuszsoron ellenőrizzük, hogy melyik Python verziót használjuk. A következőt kell lássuk (aktuális verziószámmal):

Python 3.11.0('.venv': venv)

Most már telepíthetünk a virtuális környezetben, és a Python programjaink is ezt használják.

A virtuális környezet elkészíthető a VSCode parancspaneljén is.

Példaként telepítsük a numpy csomagot (Itt most egy linuxos telepítést látunk):

pip install numpy
Collecting numpy
Downloading numpy-1.26.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.3 MB)
━━━━━━━━━━━━━━━ 18.3/18.3 MB 9.9 MB/s eta 0:00:00
Installing collected packages: numpy
Successfully installed numpy-1.26.3

Forrás

https://docs.python-guide.org/dev/virtualenvs/ (2020)

https://www.geeksforgeeks.org/create-virtual-environment-using-venv-python/ (2020)