Skip to content

Commit 76d9eb0

Browse files
committed
Add a lesson on importing and randomness
1 parent a03f409 commit 76d9eb0

File tree

3 files changed

+89
-0
lines changed

3 files changed

+89
-0
lines changed

courses/snake/info.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ plan:
5252
- lesson: fast-track/conversion
5353
- lesson: fast-track/variables
5454
- lesson: fast-track/list
55+
- lesson: snake/import
5556
- lesson: fast-track/dict
5657
- lesson: fast-track/bool
5758
- lesson: fast-track/script

lessons/snake/import/index.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Import a náhoda
2+
3+
V Pythonu je spousta funkčnosti k dispozici přímo – funkce jako `print`, `len`
4+
nebo `int` můžeš rovnou použít.
5+
Ještě víc věcí je v Pythonu sice k dispozici, ale jen když si „o ně řekneš“.
6+
Jsou sdružené do *modulů* – souborů funkcí (a dalších věcí), které spolu nějak
7+
souvisí.
8+
9+
Například když chceme pracovat s náhodnými hodnotami, můžeš využít modul
10+
`random`.
11+
Naimportuj z něj funkci `randrange`:
12+
13+
```pycon
14+
>>> from random import randrange
15+
```
16+
17+
Jakmile to uděláš, funkce `randrange` ti bude k dispozici.
18+
Můžeš ji zavolat, a dostat tak náhodné číslo:
19+
20+
```pycon
21+
>>> randrange(6)
22+
3
23+
>>> randrange(6)
24+
1
25+
>>> randrange(6)
26+
2
27+
>>> randrange(6)
28+
4
29+
>>> randrange(6)
30+
5
31+
>>> randrange(6)
32+
3
33+
>>> randrange(6)
34+
0
35+
>>> randrange(6)
36+
3
37+
>>> randrange(6)
38+
1
39+
```
40+
41+
Argument funkce `randrange` udává, kolik možných výsledků může vrátit.
42+
Funkce pak vrací čísla od nuly, takže `randrange(6)` může vrátit od 0, 1, 2,
43+
3, 4 nebo 5. Šestku už ne.
44+
45+
46+
## Náhoda a seznamy
47+
48+
Naimportuj si ještě dvě funkce:
49+
50+
```pycon
51+
>>> from random import choice, shuffle
52+
```
53+
54+
První z nich, `choice`, umí vybrat náhodný prvek ze seznamu:
55+
56+
```pycon
57+
>>> loterie = [3, 42, 12, 19, 30, 59]
58+
>>> choice(loterie)
59+
12
60+
>>> choice(loterie)
61+
30
62+
```
63+
64+
Druhá, `shuffle`, umožní seznam náhodně zamíchat.
65+
Podobně jako metoda `sort`, `shuffle` nic nevrací – jen potichu změní pořadí:
66+
67+
```pycon
68+
>>> loterie = [3, 42, 12, 19, 30, 59]
69+
>>> shuffle(loterie)
70+
>>> loterie
71+
[12, 59, 19, 42, 3, 30]
72+
>>> shuffle(loterie)
73+
>>> loterie
74+
[59, 3, 30, 19, 12, 42]
75+
```
76+
77+
## Shrnutí
78+
79+
Tohle byla docela krátká sekce – ale důležitá!
80+
81+
* **Import** nám může zpřístupnit funkce z **modulů**,
82+
které nejsou k dispozici přímo v Pythonu.
83+
* Modul `random` obsahuje funkce na výběr náhodných čísel nebo náhodných
84+
prvků ze seznamu.

lessons/snake/import/info.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
title: Import a náhoda
2+
style: md
3+
attribution: Pro Hadí workshop napsal Petr Viktorin, 2018.
4+
license: cc-by-sa-40

0 commit comments

Comments
 (0)