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
Martin Mareš
prm1
Commits
1181c3a8
Commit
1181c3a8
authored
Dec 15, 2020
by
Martin Mareš
Browse files
Lambda: Příklady
parent
0487041b
Changes
2
Hide whitespace changes
Inline
Side-by-side
10-lambda/jmena.py
0 → 100644
View file @
1181c3a8
# Seřadí primárně podle příjmení, sekundárně podle jména
def
serad
(
jmena
):
def
klic
(
jp
):
jmeno
,
prijmeni
=
jp
.
split
()
return
prijmeni
,
jmeno
return
sorted
(
jmena
,
key
=
klic
)
# Jiné řešení
def
serad2
(
jmena
):
return
sorted
(
jmena
,
key
=
lambda
jp
:
jp
.
split
()[::
-
1
])
jmena
=
[
"Vodník Česílko"
,
"Jelen Větrník"
,
"Loupežník Rumcajz"
,
"Kapr Kulda"
]
print
(
serad
(
jmena
))
10-lambda/redukce.py
0 → 100644
View file @
1181c3a8
def
red
(
s
,
f
):
x
=
s
[
0
]
for
i
in
range
(
1
,
len
(
s
)):
x
=
f
(
x
,
s
[
i
])
return
x
def
prvni_nenulovy
(
s
):
def
f
(
x
,
y
):
if
x
!=
0
:
return
x
else
:
return
y
return
red
(
s
,
f
)
# Zde předpokládáme, že seznam neobsahuje None
# (dalo by se to obejít tak, že bychom místo None použili jakýkoliv
# nově vytvořený objekt, třeba prázdný seznam)
def
vsechny_stejne
(
s
):
def
g
(
x
,
y
):
if
x
is
None
or
x
!=
y
:
return
None
else
:
return
x
return
red
(
s
,
g
)
is
not
None
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