V tomto kurzu budeme používat virtuální prostředí. Jedná se o oddělené prostředí pro Python, kam se dají instalovat jednotlivé knihovny, které jsou potom aktivní jen uvnitř. Použití prostředí má dvě hlavní výhody:
Je-li prostředí aktivované,
příkaz python
spustí verzi Pythonu, se kterou bylo prostředí nainstalováno.
Takže pak např. v materiálech nemusíme mít speciální instrukce pro
Linux (python3
) a Windows (py -3
).
Instalace knihoven nezasahuje do systémového nastavení, ani do jiných virtuálních prostředí. Můžeš tak oddělit jednotlivé projekty; v každém prostředí můžou být nainstalované jiné verze knihoven. A když se něco pokazí, adresář s virtuální prostředím můžeš prostě smazat a vytvořit znovu.
Následují zrychlené instrukce; předpokládám, že Python (3.4 a vyšší) už máš nainstalovaný a že znáš základy práce s příkazovou řádkou
Podrobný postup instalace Pythonu a vytvoření prostředí je je popsán
v příslušné lekci pro začátečníky.
Modul venv
je součást standardní knihovny.
Zkontroluj, že máš modul ensurepip
:
$ python3.6 -m ensurepip --version
pip 9.0.1 (nebo i jiná verze)
Jestli ne, postupuj podle lekce pro začátečníky – jsou tam podrobnější instrukce. Jinak použij:
$ mkdir project
$ cd project
$ python3.6 -m venv __venv__ # vytvoření virtualenvu -- použij Python dle systému
$ . __venv__/bin/activate # aktivace
(__venv__)$ python -m pip install requests # příkaz na instalaci balíčků puštěný ve virtualenvu
(__venv__)$ ... # práce "uvnitř"
(__venv__)$ deactivate # vypnutí virtualenvu
V tomto kurzu lze případně využít i Python 3.5. Pokud máš 3.4 nebo ještě nižší, doporučujeme aktualizovat.
> mkdir project
> cd project
> py -3 -m venv __venv__
> __venv__\Scripts\activate
(__venv__)> python -m pip install requests # příkaz na instalaci balíčků puštěný ve virtualenvu
(__venv__)> ... # práce "uvnitř"
(__venv__)> deactivate # vypnutí virtualenvu
Příkaz __venv__/bin/activate
budeš muset zadat vždy než začneš na projektu
pracovat.
Ono __venv__
je jen jméno adresáře. Můžeš si ho pojmenovat jak chceš; dokonce
nemusí být v rámci adresáře s projektem.
Někteří lidé mají všechny virtuální prostředí na jednom místě; dokonce existuje
nástroj virtualenvwrapper na správu takového řešení.
Autoři tohoto textu však doporučují __venv__
v adresáři s projektem.
Příkaz python -m pip install
nainstaluje danou knihovnu – může to být i jiná
než requests
jako výše.
{ "data": { "sessionMaterial": { "id": "session-material:2017/mipyt-kam:requests-click:0", "title": "Vytvoření virtuáního prostředí", "html": "\n \n \n\n <p>V tomto kurzu budeme používat <em>virtuální prostředí</em>.\nJedná se o oddělené prostředí pro Python, kam se dají instalovat jednotlivé\nknihovny, které jsou potom aktivní jen uvnitř.\nPoužití prostředí má dvě hlavní výhody:</p>\n<ul>\n<li><p>Je-li prostředí aktivované,\npříkaz <code>python</code> spustí verzi Pythonu, se kterou bylo prostředí nainstalováno.\nTakže pak např. v materiálech nemusíme mít speciální instrukce pro\nLinux (<code>python3</code>) a Windows (<code>py -3</code>).</p>\n</li>\n<li><p>Instalace knihoven nezasahuje do systémového nastavení, ani do jiných\nvirtuálních prostředí.\nMůžeš tak oddělit jednotlivé projekty; v každém prostředí můžou být\nnainstalované jiné verze knihoven.\nA když se něco pokazí, adresář s virtuální prostředím můžeš prostě smazat\na vytvořit znovu.</p>\n</li>\n</ul>\n<p>Následují zrychlené instrukce; předpokládám, že Python (3.4 a vyšší)\nuž máš nainstalovaný a že znáš základy práce\ns <a href=\"/2017/mipyt-kam/beginners/cmdline/\">příkazovou řádkou</a></p>\n<p>Podrobný postup instalace Pythonu a vytvoření prostředí je je popsán\nv příslušné <a href=\"/2017/mipyt-kam/beginners/install/\">lekci pro začátečníky</a>.\nModul <code>venv</code> je součást <a href=\"https://docs.python.org/3/library/venv.html\">standardní knihovny</a>.</p>\n<h2>Unix (Linux, macOS)</h2>\n<p>Zkontroluj, že máš modul <code>ensurepip</code>:</p>\n<div class=\"highlight\"><pre><span></span><span class=\"gp\">$ </span>python3.6 -m ensurepip --version\n<span class=\"go\">pip 9.0.1 (nebo i jiná verze)</span>\n</pre></div><p>Jestli ne, postupuj podle <a href=\"/2017/mipyt-kam/beginners/install/\">lekce pro začátečníky</a> –\njsou tam podrobnější instrukce.\nJinak použij:</p>\n<div class=\"highlight\"><pre><span></span><span class=\"gp\">$ </span>mkdir project\n<span class=\"gp\">$ </span><span class=\"nb\">cd</span> project\n<span class=\"gp\">$ </span>python3.6 -m venv __venv__ <span class=\"c1\"># vytvoření virtualenvu -- použij Python dle systému</span>\n<span class=\"gp\">$ </span>. __venv__/bin/activate <span class=\"c1\"># aktivace</span>\n<span class=\"gp\">(__venv__)$ </span>python -m pip install requests <span class=\"c1\"># příkaz na instalaci balíčků puštěný ve virtualenvu</span>\n<span class=\"gp\">(__venv__)$ </span>... <span class=\"c1\"># práce "uvnitř"</span>\n<span class=\"gp\">(__venv__)$ </span>deactivate <span class=\"c1\"># vypnutí virtualenvu</span>\n</pre></div><p>V tomto kurzu lze případně využít i Python 3.5. Pokud máš 3.4 nebo ještě nižší,\ndoporučujeme aktualizovat.</p>\n<h2>Windows</h2>\n<div class=\"highlight\"><pre><span></span><span class=\"gp\">> </span>mkdir project<span class=\"gp\"></span>\n<span class=\"gp\">> </span>cd project<span class=\"gp\"></span>\n<span class=\"gp\">> </span>py -3 -m venv __venv__<span class=\"gp\"></span>\n<span class=\"gp\">> </span>__venv__\\Scripts\\activate\n<span class=\"gp\">(__venv__)> </span>python -m pip install requests <span class=\"c\"># příkaz na instalaci balíčků puštěný ve virtualenvu</span>\n<span class=\"gp\">(__venv__)> </span>... <span class=\"c\"># práce "uvnitř"</span>\n<span class=\"gp\">(__venv__)> </span>deactivate <span class=\"c\"># vypnutí virtualenvu</span>\n</pre></div><!-- XXX: Windows cmd prompt with active venv is not highlighted properly... -->\n\n<h2>Poznámky</h2>\n<p>Příkaz <code>__venv__/bin/activate</code> budeš muset zadat vždy než začneš na projektu\npracovat.</p>\n<p>Ono <code>__venv__</code> je jen jméno adresáře. Můžeš si ho pojmenovat jak chceš; dokonce\nnemusí být v rámci adresáře s projektem.\nNěkteří lidé mají všechny virtuální prostředí na jednom místě; dokonce existuje\nnástroj <a href=\"https://virtualenvwrapper.readthedocs.io/en/latest/\">virtualenvwrapper</a> na správu takového řešení.\nAutoři tohoto textu však doporučují <code>__venv__</code> v adresáři s projektem.</p>\n<p>Příkaz <code>python -m pip install</code> nainstaluje danou knihovnu – může to být i jiná\nnež <code>requests</code> jako výše.</p>\n\n\n " } } }