Skip to content

Instantly share code, notes, and snippets.

@brabemi
Last active December 3, 2022 09:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save brabemi/3f182cb3c787aeb5767f1b7320786210 to your computer and use it in GitHub Desktop.
Save brabemi/3f182cb3c787aeb5767f1b7320786210 to your computer and use it in GitHub Desktop.
PyLadies - Praha - podzim 2022 - Lekce 11
def nakresli_mapu(souradnice):
velikost = 10
tabulka = []
for i in range(velikost):
radek = []
for j in range(velikost):
radek.append('.')
tabulka.append(radek)
# for dvojice in souradnice:
# jednořádkovou variantu rozbalení tuple dvojice mohu dát rovnou do for
for sloupec, radek in souradnice:
# tuple dvojice mohu rozbalit na dva řádky pomocí indexů [0] a [1]
# sloupec = dvojice[0]
# radek = dvojice[1]
# nebo ho mohu rozbalit na jeden řádek, kdy python atomaticky dá jednotlivé indexy do proměnných
# sloupec, radek = dvojice
tabulka[radek][sloupec] = 'X'
# for radek in tabulka:
# for policko in radek:
# print(policko, end=' ')
# print()
for radek in tabulka:
print(' '.join(radek))
print()
def pohyb(s, smer):
posledni_souradnice = s[-1]
sloupec, radek = posledni_souradnice
if smer == 'v':
nova_souradnice = (sloupec+1, radek)
elif smer == 'z':
nova_souradnice = (sloupec-1, radek)
elif smer == 's':
nova_souradnice = (sloupec, radek-1)
elif smer == 'j':
nova_souradnice = (sloupec, radek+1)
s.append(nova_souradnice)
souradnice = [(0, 0)]
nakresli_mapu(souradnice)
pohyb(souradnice, 'v')
nakresli_mapu(souradnice) # → [(0, 0), (1, 0)]
pohyb(souradnice, 'v')
nakresli_mapu(souradnice) # → [(0, 0), (1, 0), (2, 0)]
pohyb(souradnice, 'j')
nakresli_mapu(souradnice) # → [(0, 0), (1, 0), (2, 0), (2, 1)]
pohyb(souradnice, 'v')
nakresli_mapu(souradnice)
pohyb(souradnice, 'v')
nakresli_mapu(souradnice)
pohyb(souradnice, 's')
nakresli_mapu(souradnice)
# nakresli_mapu([(0, 0), (1, 0), (2, 2), (4, 3), (8, 9), (8, 9)])
def tovarna_na_lidi(jmeno, prijmeni, rok):
jmeno = jmeno[0].upper() + jmeno[1:].lower()
prijmeni = prijmeni[0].upper() + prijmeni[1:].lower()
vek = 2022 - rok
return {
'jmeno': jmeno,
'prijmeni': prijmeni,
'rok': rok,
'vek': vek,
}
def lektvar_mladi(clovek):
# clovek['vek'] = clovek['vek'] - 10
clovek['vek'] -= 10
# 1. způsob
# jmeno1 = 'Mirek'
# prijmeni1 = 'Brabenec'
# rok1 = 1993
# 2. způsob
# mirek = {
# 'jmeno': 'Mirek',
# 'prijmeni': 'Brabenec',
# 'rok': 1993
# }
# 3. způsob
mirek = tovarna_na_lidi('mirek', 'brabenec', 1993)
# marek = {
# 'jmeno': 'Marek',
# 'prijmeni': 'Brabec',
# 'rok': 1994
# }
marek = tovarna_na_lidi('marek', 'brabec', 1994)
lide = [mirek, marek]
for clovek in lide:
print(clovek['jmeno'], clovek['prijmeni'], clovek['rok'], clovek['vek'])
lektvar_mladi(clovek)
print(clovek['jmeno'], clovek['prijmeni'], clovek['rok'], clovek['vek'])
# https://pastebin.com/P1zj2ugw
# vyrob třídu Kocka
# trida bude mít __init__
# kocka má jméno a počet životů, který je na začátku 9
# vyrobte jeden objekt Kocka
class Clovek:
def __init__(self, jmeno, prijmeni, rok):
jmeno = jmeno[0].upper() + jmeno[1:].lower()
prijmeni = prijmeni[0].upper() + prijmeni[1:].lower()
vek = 2022 - rok
self.jmeno = jmeno
self.prijmeni = prijmeni
self.rok = rok
self.vek = vek
mirek = Clovek('mirek', 'brabenec', 1993)
print(type(mirek))
print(mirek)
print(mirek.jmeno, mirek.prijmeni, mirek.rok, mirek.vek)
# vyrob třídu Kocka
# trida bude mít __init__
# kocka má jméno a počet životů, který je na začátku 9
# vyrobte jeden objekt Kocka
class Kocka:
def __init__(self, jmeno, zivoty=9):
self.jmeno = jmeno
self.zivoty = zivoty
def zamnoukej(self):
print(f'{self.jmeno}: Mnauuu')
def zastekej(self):
print(f'{self.jmeno}: Mnauuu?')
def snez(self, jidlo):
print(f'{self.jmeno}: {jidlo} mi chutná')
def je_ziva(self):
if self.zivoty > 0:
return True
else:
return False
def uber_zivot(self):
# if self.zivoty > 0:
if self.je_ziva():
self.zivoty -= 1
moje_kocky = [
Kocka('Mourek'),
Kocka('Bertik', 5),
]
for kocka in moje_kocky:
# print(kocka)
# print(kocka.jmeno, kocka.zivoty)
kocka.zamnoukej()
kocka.zastekej()
kocka.snez('kuře')
if kocka.jmeno == 'Bertik':
print(kocka.je_ziva())
for i in range(15):
kocka.uber_zivot()
print(kocka.zivoty)
print(kocka.je_ziva())
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment