Last active
April 11, 2019 08:41
-
-
Save brabemi/fdf64ffcd72777a22ae820354da1a993 to your computer and use it in GitHub Desktop.
PyLadies - Praha (NTK) - jaro 2019 - Lekce 5 – Řetězce
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def vypis_hezky_nasobilku(maximum): | |
for radek in range(maximum): | |
for sloupec in range(maximum): | |
# formátování viz https://naucse.python.cz/2019/pyladies-praha-jaro-ntk/beginners/str/ | |
# Do {} lze zapsat, jak má výstup vypadat viz https://pyformat.info/ | |
# : - pomocný znak, > - zarovnat vpravo, 3 - šířka na 3 znaky | |
print('{:>3}'.format(radek * sloupec), end=' ') | |
print() | |
vek = 18 | |
jmeno = 'Jan' | |
prijmeni = 'Kolar' | |
print(prijmeni, jmeno, vek) | |
vypis = '{} {}: {} let'.format(jmeno, prijmeni, vek) | |
print(vypis) | |
vypis = '{krestni}: {vek} let'.format(vek=vek, krestni=jmeno) | |
print(vypis) | |
vypis_hezky_nasobilku(10) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import random | |
def hod_kostkou(): | |
return random.randint(1, 6) | |
def hra_hrace(): | |
pocet_hodu = 0 | |
while True: | |
hod = hod_kostkou() | |
pocet_hodu += 1 | |
print(hod, end=' ') | |
if hod == 6: # Pokud padne 6 přeruš while cyklus | |
break | |
print() | |
return pocet_hodu | |
def hra(pocet_hracu): | |
maximum_hodu = 0 # 0 je bezpečná, každý musí hodit minimálně 1x | |
vedouci_hrac = 0 # hráč 0 neexistuje | |
for hrac in range(1, pocet_hracu + 1): | |
print('Hází hráč', hrac) | |
pocet_hodu = hra_hrace() | |
if pocet_hodu > maximum_hodu: | |
maximum_hodu = pocet_hodu | |
vedouci_hrac = hrac | |
print('Vede hráč ', vedouci_hrac, ', který házel ', maximum_hodu, 'x', sep='') | |
print('Vyhrál hráč ', vedouci_hrac, ', který házel ', maximum_hodu, 'x', sep='') | |
hra(4) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
text = 'tajneHeslo1' | |
delka = len(text) | |
# pokud chceme znát pozici | |
for pozice in range(delka): | |
print('Pozice', pozice, 'pismeno', text[pozice]) | |
# pokud chceme jen znaky jeden po druhém | |
for znak in text: | |
print(znak) | |
# jak otočit řetězec | |
obraceny_text = '' | |
# pomocí iterace, stačí jít znak po znaku a přidávat na začátek | |
for znak in text: | |
obraceny_text = znak + obraceny_text | |
print(text) | |
print(obraceny_text) | |
# řešení, které najdete pokud budete googlit | |
# [od:do:krok] - řezání od začátku do konce | |
# '0123456789'[0::2] -> zařátek až konec, krok 2 -> '02468' | |
# '0123456789'[1::2] -> od znaku na pozici 1 až konec, krok 2 -> '13579' | |
obraceny_text2 = text[::-1] | |
print(text) | |
print(obraceny_text2) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
print('o' in 'čokoláda') # True, o je ve slově čokoláda | |
print('ř' in 'čokoláda') # False, ř není ve slově čokoláda | |
print('o' not in 'čokoláda') # False, o je ve slově čokoláda | |
print('ř' not in 'čokoláda') # True, ř není ve slově čokoláda | |
print('oko' in 'čokoláda') # True, oko je ve slově čokoláda | |
print('okoř' in 'čokoláda') # False, okoř není ve slově čokoláda | |
print('xxx' in '--ox-xo--') # False, xxx není --ox-xo-- | |
print('xxx' in '--oxxxo--') # True, xxx je --oxxxo-- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
text = input('Jsi muž? ') | |
# Chceme poznat uživatel napsal ano | |
# testovat ano, Ano, aNo, anO, ANo, AnO, aNO, ANO by bylo hrozně moc if ... elif | |
# .lower() nám převede všechny tyto varianty na ano, pak nám stačí jeden if | |
# lze použít .upper(), které by vytvořilo ANO | |
text_lower = text.lower() | |
if text_lower == 'ano': | |
print('Budu ti říkat Pepa') | |
else: | |
print('Budu ti říkat Anna') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def vypis_nasobilku(maximum): | |
for radek in range(maximum): | |
for sloupec in range(maximum): | |
print(radek * sloupec, end=' ') | |
print() | |
def vypis_hezky_nasobilku(maximum): | |
for radek in range(maximum): | |
for sloupec in range(maximum): | |
# formátování viz https://naucse.python.cz/2019/pyladies-praha-jaro-ntk/beginners/str/ | |
# Do {} lze zapsat, jak má výstup vypadat viz https://pyformat.info/ | |
# : - pomocný znak, > - zarovnat vpravo, 3 - šířka na 3 znaky | |
print('{:>3}'.format(radek * sloupec), end=' ') | |
print() | |
vypis_nasobilku(10) | |
print() | |
vypis_hezky_nasobilku(10) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def prostredni_pismeno(text): | |
if text == "": | |
return "" | |
delka = len(text) | |
stred = delka // 2 | |
if delka % 2 == 1: | |
return text[stred] | |
else: | |
return text[stred - 1] + text[stred] | |
print(prostredni_pismeno("test") == "es") # vrátí "es" | |
print(prostredni_pismeno("testing") == "t") # vrátí "t" | |
print(prostredni_pismeno("middle") == "dd") # vrátí "dd" | |
print(prostredni_pismeno("AB") == "AB") # vrátí "AB" | |
print(prostredni_pismeno("A") == "A") # vrátí "A" | |
print(prostredni_pismeno("") == "") # vrátí "" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def schody(patra): | |
for patro in range(patra): | |
for krok in range(patro + 1): | |
print('X ', end='') | |
print() | |
# X | |
# X X | |
# X X X | |
# X X X X | |
# X X X X X | |
schody(5) | |
# X | |
# X X | |
# X X X | |
# X X X X | |
# X X X X X | |
# X X X X X X | |
# X X X X X X X | |
# X X X X X X X X | |
# X X X X X X X X X | |
# X X X X X X X X X X | |
schody(10) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
jmeno = "Karel" | |
prijmeni = "Novak" | |
inicialy = jmeno[0] + prijmeni[0] | |
print(inicialy) | |
# první 3 písmena přijmení + první 3 písmena jména | |
username = prijmeni[0:3] + jmeno[0:3] | |
print(username) | |
# pokud chceme zařít od začátku není třeba psát 0 | |
username = prijmeni[:3] + jmeno[:3] | |
print(username) | |
# začištění, nechceme username NovKar ale novkar | |
username = username.lower() | |
print(username) | |
# len() vrací délku řetězce | |
delka = len(username) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment