Skip to content

Commit dfa88e5

Browse files
authored
Update the lesson about the venv setup
#32
2 parents ec2fb7e + bf0f5fb commit dfa88e5

3 files changed

Lines changed: 67 additions & 45 deletions

File tree

Lines changed: 67 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1-
{%- macro sidebyside(titles=['Unix', 'Windows']) -%}
1+
{%- macro sidebyside(titles=['Unix', 'Windows'], code=True) -%}
22
<div class="row side-by-side-commands">
33
{%- for title in titles -%}
44
<div class="col">
55
<h4>{{ title }}</h4>
66
{%- filter markdown() -%}
7-
```{%- if title.lower().startswith('win') -%}dosvenv{%- else -%}console{%- endif -%}
7+
{%- if code -%}```
8+
{%- if title.lower().startswith('win') -%}dosvenv{%- else -%}console{%- endif -%}
9+
{%- endif -%}
810
{{ caller() | extract_part(loop.index0, '---') | dedent }}
9-
```
11+
{%- if code -%}```{%- endif -%}
1012
{%- endfilter -%}
1113
</div>
1214
{%- endfor -%}
@@ -15,13 +17,15 @@
1517

1618
# Nastavení prostředí
1719

18-
V této sekci si připravíš adresář, do kterého budeš ukládat soubory
19-
k začátečnickým kurzům Pythonu, a aktivuješ si virtuální prostředí.
20+
V této sekci si:
21+
* připravíš adresář, do kterého budeš ukládat soubory k začátečnickým kurzům
22+
Pythonu a
23+
* aktivuješ virtuální prostředí.
2024

2125
## Příprava adresáře
2226

23-
Programátoři vytváří spoustu souborů, a víc než u mnoha jiných uživatelů
24-
počítače záleží na tom, kde jsou ty soubory uložené.
27+
Programátoři vytváří spoustu souborů a víc než u mnoha jiných uživatelů
28+
počítače jim záleží na tom, kde jsou ty soubory uložené.
2529

2630
Níže uvedený postup zdaleka není jediná možnost, jak si organizovat soubory.
2731
Když ale použiješ tenhle ozkoušený způsob,
@@ -46,8 +50,10 @@ Proto ho nedoporučuji vytvářet na Ploše.
4650
> přestane fungovat *virtuální prostředí*, které za chvíli vytvoříme.
4751
> Musel{{a}} bys ho smazat a vytvořit nové.
4852
49-
Po vytvoření adresáře si poznamenej, kde přesně je.
50-
Budeš ho potřebovat na celý zbytek kurzu i na případné navazující kurzy.
53+
Tenhle adresář budeš potřebovat na celý zbytek kurzu i na případné
54+
navazující kurzy.
55+
Poznamenej si proto kde přesně je – zkopíruj si celé jeho jméno, které pak
56+
můžeš vložit do `cd` v příkazové řádce nebo do grafického prohlížeče souborů.
5157

5258

5359
### Adresář pro každou lekci
@@ -58,19 +64,19 @@ mít obsah zorganizovaný.
5864

5965
Pro začátek si budeme tvořit nový podadresář pro každou lekci tohoto kurzu.
6066
Aby byly tyhle adresáře hezky seřazené, budeme je číslovat:
61-
tahle první lekce bude mít číslo `01`,
62-
příště si vytvoříš adresář `02` a tak dále.
67+
tahle první lekce bude mít číslo `00`,
68+
příště si vytvoříš adresář `01` a tak dále.
6369

6470
Všechny budou v tvém novém adresáři, který jsi vytvořil{{a}} před chvilkou.
6571

66-
Adresář `01` si vytvoř už teď.
72+
Adresář `00` si vytvoř už teď.
6773
(Možná do něj dnes nic nedáš, ale hodí se ho mít jako ukázku pro příště.)
6874

6975

7076
### Přepnutí
7177

7278
Pak otevři příkazovou řádku a příkazem `cd` přepni do adresáře,
73-
ve kterém jsi právě vytvořila `01` (t.j. ne přímo do `01`).
79+
ve kterém jsi právě vytvořil{{a}} `00` (t.j. ne přímo do `00`).
7480
Například:
7581

7682
```console
@@ -81,7 +87,7 @@ Pak zkontroluj, že jsi na správném místě:
8187
* Pomocí příkazu `pwd` (na Windows `cd`) zkontroluj,
8288
že opravdu jsi v nově vytvořeném adresáři.
8389
* Pomocí příkazu `ls` (na Windows `dir`) zkontroluj,
84-
že v něm je podadresář `01`.
90+
že v něm je podadresář `00`.
8591

8692
Například:
8793

@@ -90,47 +96,48 @@ $ pwd
9096
/home/helena/{{rootname}}
9197

9298
$ ls
93-
01
99+
00
94100
---
95101
> cd
96102
C:\Users\Helena\{{rootname}}
97103

98104
> dir
99105
Directory of C:\Users\Helena\{{rootname}}
100-
05/08/2014 07:28 PM <DIR> 01
106+
05/08/2014 07:28 PM <DIR> 00
101107
{% endcall %}
102108

103-
{% if var('coach-present') -%}
104-
Výsledek pro kontrolu ukaž koučovi.
105-
{%- endif %}
106-
107109

108110
## Virtuální prostředí
109111

110-
Teď nainstalujeme *virtuální prostředí* pro Python.
112+
Teď si vytvoříš *virtuální prostředí* pro Python.
111113

112-
Virtuální prostředí je něco, co nám zajistí, že se všechny počítače budou
114+
Virtuální prostředí je něco, co zajistí že se všechny počítače budou
113115
chovat zhruba stejně.
114-
Až ho zprovozníme, nebudeme potřebovat instrukce zvlášť pro Linux,
116+
Až ho zprovozníme, nebudu už potřebovat instrukce zvlášť pro Linux,
115117
zvlášť pro Windows a zvlášť pro macOS.
116118

117119
> [note]
118-
> V budoucnu využijeme druhou výhodu: každé virtuální prostředí je oddělené od
119-
> ostatních, takže když doinstalujeme nějakou knihovnu (rozšíření pro Python),
120+
> V budoucnu využiješ i druhou výhodu: každé virtuální prostředí je oddělené od
121+
> ostatních, takže když doinstaluješ nějakou knihovnu (rozšíření pro Python),
120122
> projeví se to jen v jednom virtuálním prostředí.
121-
> Pokud by se při práci na projektu něco pokazilo, neohrozí to další projekty
122-
> ve tvém počítači.
123+
> Kdyby se pak při práci na projektu něco pokazilo, neohrozí to další
124+
> projekty ve tvém počítači.
123125
124126
Jak na to?
125127
Na každém systému jinak!
126128

127-
* normální **Linux** (pokud jsi přeskočil{{a}} instalaci Virtualenv):
129+
* **Linux**:
130+
131+
Podle toho jak máš Python nainstalovaný bude fungovat jeden z následujících
132+
příkazů.
133+
Bude je rychlejší vyzkoušet než popsat kdy je který správný,
134+
takže nejdřív zkus:
128135

129136
```console
130137
$ python3 -m venv venv
131138
```
132139

133-
* starší **Linux** (pokud jsi musel{{a}} instalovat Virtualenv):
140+
A jestli dostaneš chybu `No module named venv`, zkus místo toho:
134141

135142
```console
136143
$ virtualenv -p python3 venv
@@ -144,57 +151,72 @@ Na každém systému jinak!
144151

145152
* **Windows**:
146153

154+
Podle toho jak máš Python nainstalovaný bude fungovat jeden z následujících
155+
příkazů.
156+
Bude je rychlejší vyzkoušet než popsat kdy je který správný,
157+
takže nejdřív zkus:
158+
147159
```doscon
148160
> py -3 -m venv venv
149161
```
150162

163+
A jestli dostaneš chybu `'py' is not recognized`, zkus místo toho:
164+
165+
```doscon
166+
> python3 -m venv venv
167+
```
168+
151169
Tím se ti vytvořil adresář `venv`, který virtuální prostředí obsahuje.
152170
Můžeš se podívat dovnitř, ale neukládej tam své soubory a nikdy tam nic neměň!
153171

154-
Zkontroluj si, že `01` a `venv` jsou pěkně vedle sebe:
172+
Zkontroluj si, že `00` a `venv` jsou pěkně vedle sebe:
155173

156174
{% call sidebyside(titles=['Unix', 'Windows']) %}
157175
$ ls
158-
01
176+
00
159177
venv
160178
---
161179
> dir
162180
Directory of C:\Users\Helena\{{rootname}}
163-
05/08/2014 07:28 PM <DIR> 01
181+
05/08/2014 07:28 PM <DIR> 00
164182
05/08/2014 07:38 PM <DIR> venv
165183
{% endcall %}
166184

167185
V grafickém prohlížeči souborů to vypadá např. takto:
168186

169187
{{ figure(
170-
img=static('dirs.png'),
171-
alt="(adresáře '01' a 'venv' vedle sebe)",
188+
img=static('dirs-00.png'),
189+
alt="(adresáře '00' a 'venv' vedle sebe)",
172190
) }}
173191

174-
{% if var('coach-present') -%}
175-
Výsledek pro kontrolu ukaž koučovi.
176-
{%- endif %}
177-
178192

179193
### Aktivace virtuálního prostředí
180194

181195
Nakonec virtuální prostředí aktivuj:
182196

183-
{% call sidebyside(titles=['Unix', 'Windows']) %}
197+
{% call sidebyside(titles=['Unix', 'Windows'], code=False) %}
198+
```console
184199
$ source venv/bin/activate
200+
```
185201
---
202+
```doscon
186203
> venv\Scripts\activate
204+
```
205+
206+
Jestli používáš příkazovou řádku ve Visual Studio Code,
207+
je příkaz pro Windows složitější:
208+
```doscon
209+
> &powershell -ExecutionPolicy bypass
210+
> venv/Scripts/Activate.ps1
211+
```
187212
{% endcall %}
188213

189214
Po spuštění tohoto příkazu by se mělo na začátku příkazové řádky
190215
(před `$` nebo `>`) objevit slovo `(venv)`.
191216
Tak poznáš, že je virtuální prostředí *aktivní*.
192217

193218
Aktivační příkaz si zapiš.
194-
Bude potřeba ho zadat vždycky, když pustíš příkazovou řádku,
195-
ve které budeš zkoušet své programy.
196219

197-
{% if var('pyladies') %}
198-
Máš-li vytištěné <a href="http://pyladies.cz/v1/s001-install/handout/handout.pdf">domácí projekty</a>,
199-
příkaz si poznač tam, ať ho do příště nezapomeneš :)
200-
{% endif %}
220+
Vždycky, když pustíš příkazovou řádku ve které budeš zkoušet své programy,
221+
budeš muset pomocí `cd` přepnout do `{{rootname}}` a zadat tento
222+
aktivační příkaz.
19.7 KB
Loading
-3.35 KB
Binary file not shown.

0 commit comments

Comments
 (0)