Řetězce obsahují slova, věty nebo jiný text.
Řetězce se zadávají v uvozovkách – jednoduchých '
nebo dvojitých "
:
>>> 'Ahoj!'
'Ahoj!'
>>> "Ahoj!"
"Ahoj!"
Řetězce jdou spojovat sčítáním. Vyzkoušej si to:
>>> 'A' + "B"
'AB'
Co je tady špatně? Jak to spravit?
>>> 'Ahoj' + 'světe!'
Řetězce se dají sčítat. Dají se i násobit? Dělit? Odečítat? (Odpověz slovně.)
Co se stane, když se pokusím sečíst číslo a řetězec? (Můžeš vložit výsledek z příkazové řádky, ale odpověz i slovně)
A vynásobit? (Můžeš vložit výsledek z příkazové řádky, ale odpověz i slovně)
Vzpomínáš si na chybové hlášky a na proměnné?
Jaká chyba nastane, když zkusíš podělit řetězec řetězcem?
Jaká chyba nastane, když zkusíš použít proměnnou předtím, než do ní něco přiřadíš?
Ne všechno se dá použít jako jméno proměnné. Fungují pro proměnné následující jména? Pokud ne, proč asi?
x
tlacitko4
34
3e4
krůta
$i
druha-odmocnina
readme.txt
kratsiStrana
POCET_BODU
_
(podtržítko)π
(pí)True
_cache
__name__
while
Napiš program, který spočítá povrch a objem krychle o straně 2852 cm.
Abys nemusela tolik hledat v učebnici (vlastně Wikipedii): povrch S = 6a², objem V = a³
Řešení, pro kontrolu: S = 48803424 cm², V = 23197894208 cm³
Změň program tak, aby stranu/poloměr mohl uživatel zadat.
Napiš program, který po zadání správného hesla vypíše nějakou „tajnou informaci“.
Vhodné tajemství je třeba: V pátek jsem viděl černého havrana.
Na srazu jsme spolu vytvářeli program, který píše různé nesmysly podle uživatelem zadaného věku.
Zkus napsat program, který píše hlášky podle zadané rychlosti chůze, váhy ulovené ryby, počtu tykadel, teploty vody nebo třeba vzdálenosti od rovníku.
(Pošli ten nejzdařilejší; kdyby ses chtěla pochlubit několika verzemi, dej je všechny do jedné odpovědi.)
Čím se liší program:
if pocet_tykadel > 12:
print("Odkud jste přiletěli?")
if pocet_tykadel > 6:
print("Že by pavouček?")
else:
print("Tak málo tykadel mě nezajímá!")
od programu:
if pocet_tykadel > 12:
print("Odkud jste přiletěli?")
elif pocet_tykadel > 6:
print("Že by pavouček?")
else:
print("Tak málo tykadel mě nezajímá!")
Následuje pár úkolů, které tvoří větší projekt. Navazují na sebe. Dělej je postupně.
Ulož si následující program jako pokus.py
a spusť ho několikrát za sebou.
Co dělá?
from random import randrange
cislo = randrange(3)
print(cislo)
Jak to funguje, to si vysvětlíme příště; zatím to ber jako kouzelné zaříkadlo.
Aby všechno fungovalo správně, nesmíš mít v aktuálním adresáři soubor jménem random.py
.
Vytvoř program, který dělá následující:
tvar
uloží slovo 'trojúhelník'
;tvar
uloží slovo 'čtverec'
;tvar
uloží slovo 'kolečko'
.tvar
.Vytvoř hru Kámen nůžky papír, která funguje následovně:
tah_pocitace
dá náhodně slovo 'kámen'
, 'nůžky'
nebo 'papír'
.
(Koukni na předchozí úkol!)tah_hrace
'kámen'
:'kámen'
:'Remíza!'
;'nůžky'
:'Vyhrál jsi!'
;'papír'
:'Prohrál jsi!'
.'nůžky'
:'kámen'
:'Prohrál jsi!'
;'nůžky'
:'Remíza!'
;'papír'
:'Vyhrál jsi!'
.'papír'
:'kámen'
:'Vyhrál jsi!'
;'nůžky'
:'Prohrál jsi!'
;'papír'
:'Remíza!'
.Je to celkem dlouhý program, ale můžeš ho psát postupně:
každý jednotlivý řádek „přelož“ do Pythonu.
Budeš potřebovat if
, elif
, a else
;
porovnávání (==
) a přiřazení (=
); pro výpis print
a pro vstup input
.
Bonus: tyto úkoly jsou nepovinné
Testování malé násobilky Nech počítač náhodně vygenerovat dvě čísla v rozsahu 1 až 10, a uživatele vyzvi k zadání jejich součinu. Ověř, jestli uživatel odpověděl správně.
Napiš program, který se nejprve uživatele zeptá na těleso, které má vypočítat (krychle, kvádr, koule). Potom se zeptejte, jakou metriku má vypočítat (objem, povrh).
Pozn. _Nutná znalost cyklu while
_
Změň cvičení na zadávání hesla (to s černým havranem :)) a nechej uživatele zadávat heslo, dokud ho nezadá správně.