Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Čermák Petr
Prm1
Commits
bbc6987a
Commit
bbc6987a
authored
Nov 27, 2020
by
cermak
Browse files
Lesson 9
parent
47d75288
Pipeline
#21416
failed with stage
in 26 seconds
Changes
13
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
1
0-lambda/
1
0-lambda.tex
→
0
9
-lambda/0
9
-lambda.tex
View file @
bbc6987a
\documentclass
{
beamer
}
\title
{
Programování 1
: Triky s
funkce
mi
}
\title
{
Programování 1
.9: Lambda
funkce
}
\input
../slidemac.tex
...
...
@@ -15,6 +15,27 @@
% ----------------------------------------------------------------------
\begin{frame}
{
Jak python chápe funkce
}
\begin{itemize}
\item
Funkce je objekt, stejně jako int, str, list
\item
Dají se
\begin{itemize}
\item
definovat,
\item
mazat,
\item
předávat jiným funkcím jako parametr,
\item
vracet pomocí slova return
\end{itemize}
\end{itemize}
\end{frame}
% ----------------------------------------------------------------------
\begin{frame}
{
Funkce jako parametr
}
\pycode
{
po
_
slozkach.py
}
...
...
@@ -96,6 +117,11 @@ sorted(p, key=lambda x: x[1])
\begin{frame}
{
Lambdy ve standardní knihovně: map
}
Vestavěná funkce map má dva argumenty, funkci a iterable (=list, generátor...).
Aplikuje funkci postupně na všechny prvky a yielduje výsledky.
\bigskip
\py
{
%
cisla = map(int, ["12", "34"])
\\
list(cisla)
...
...
@@ -176,6 +202,23 @@ b()
\end{frame}
% ----------------------------------------------------------------------
\begin{frame}
{
Úkoly na hodinu
}
\begin{itemize}
\item
Napište funkci compose(f,g), která pro dvě funkce f a g (obě s jedním parametrem) vrátí funkci, jež je jejich složením (f(g(x))).
\item
Napište funkci red(s,f), která dostane seznam s a funkci f(x,y) a spočítá f(f(f(s[0], s[1]), s[3]), s[4]).
\item
Zapište pomocí redukce součet prvků seznamu.
\item
Zapište pomocí redukce nalezení maxima seznamu.
\item
Zapište pomocí redukce nalezení prvního nenulového prvku (není-li, vraťte 0).
\item
Co redukce udělá pro operátor -?
\item
Co udělá red(s, lambda x, y: (x,y))?
\end{itemize}
\end{frame}
% ----------------------------------------------------------------------
...
...
1
0-lambda/Makefile
→
0
9
-lambda/Makefile
View file @
bbc6987a
File moved
1
0-lambda/po_slozkach.py
→
0
9
-lambda/po_slozkach.py
View file @
bbc6987a
File moved
1
0-lambda/vnorene.py
→
0
9
-lambda/vnorene.py
View file @
bbc6987a
File moved
1
0-lambda/vnorene2.py
→
0
9
-lambda/vnorene2.py
View file @
bbc6987a
File moved
0
9
-objekty/09-objekty.tex
→
1
0-objekty/09-objekty.tex
View file @
bbc6987a
File moved
0
9
-objekty/Makefile
→
1
0-objekty/Makefile
View file @
bbc6987a
File moved
0
9
-objekty/trida.py
→
1
0-objekty/trida.py
View file @
bbc6987a
File moved
0
9
-objekty/trida_dedicnost.py
→
1
0-objekty/trida_dedicnost.py
View file @
bbc6987a
File moved
0
9
-objekty/trida_def.py
→
1
0-objekty/trida_def.py
View file @
bbc6987a
File moved
0
9
-objekty/trida_doc.py
→
1
0-objekty/trida_doc.py
View file @
bbc6987a
File moved
0
9
-objekty/trida_op.py
→
1
0-objekty/trida_op.py
View file @
bbc6987a
File moved
0
9
-objekty/trida_str.py
→
1
0-objekty/trida_str.py
View file @
bbc6987a
File moved
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment