Pythoní ORM pro SQLite [2023-03-01]

Na hodině budeme probírat správu databáze SQLite pomocí knihovního modulu sqlite3, která v podstatě až na iteraci nad návratovou množinou záznamů používá přímo jazyk SQL.

Vaším úkolem je dohledat alespoň několik ORM-modulů mapujících databázi SQLite do Pythonu. (Hned na první dotaz na internetu jsem jich objevil nejméně pět, takže máte co zkoumat.) Pro každý modul zaznamenejte jeho jméno, zdroj na internetu a okopírujte několik příkladů z dokumentace. A teď to zajímavé: Jelikož vlastně s databázemi neumíme ještě pracovat, chci po vás jedinou věc – po jednom semestru Pythonu se na tyto dohledané příklady podívejte a čistě vizuálně zhodnoťte, která ORM vám přijde nejpřehlednější.

PS: Jde o to, že dlouholetí uživatelé ORM budou asi skoro všichni přísahat na SQLAlchemy, která je ovšem podle podobného počtu uživatelů pro začátečníky asi nepříliš vhodná. Tak mě prostě zajímá, co byste si samy vybraly.




Databáze chemických prvků pomocí SQLite [2023-03-15]

Řešte všechny příklady na tvorbu a práci s databází chemických prvků.




Databáze chemických prvků pomocí ORM [dobrovolné]

Zopakujte si předchozí příklad na databázi chemických prvků, ale tentokrát ji neřešte pomocí knihovního modulu sqlite3 nýbrž pomocí Vámi zvoleného ORM.

PS: Jakožto asi nejvíce pythoní mám v přednáškách popsané základy práce s PonyORM, ale s radostí uvidím použitou nějakou jinou knihovnu.




GUI pro databázi chemických prvků – teorie [2023-03-29]

Příště – až probereme formuláře v HTML5 – vás bude čekat úkol na vytvoření GUI pro výpis filtrovatelných záznamů databáze chemických prvků ze cvičení 2. Protože jste neabsolvovali předmět Webové technologie, berte tento úkol jako povinné dostudování (či možná zopakování ze střední školy) základů HTML a jeho propojení s aplikací WSGI. Pročež si tedy nastudujte (upravený) kód z hodiny:




GUI pro databázi chemických prvků – praxe [2023-04-05]

Vyjděte z odladěného kódu pro dva formulářové prvky (soubor 10.py z archívu) a upravte ho pro dotaz typu „name & density“ (tedy opět dva formulářové prvky, jen elektronegativitu nahradí hustota).




Binární příznaky modulu re [2023-04-12]

Pomocí funkcí dir() a getattr() vyrobte podobný rozumně naformátovaný výpis všech binárních příznaků modulu re:

          1         0b1 T     TEMPLATE
          2        0b10 I     IGNORECASE
          4       0b100 L     LOCALE
          8      0b1000 M     MULTILINE
         16     0b10000 S     DOTALL
         32    0b100000 U     UNICODE
         64   0b1000000 X     VERBOSE
        128  0b10000000 DEBUG DEBUG
        256 0b100000000 A     ASCII



Úpravy obrázků pomocí Numpy [2023-05-17]

Konečně jsme se (skoro) ve zdraví sešli, aplikujme proto Numpy (a Pillow) na pár zajímavých úloh s obrázky. Najděte si nějakou pěknou fotku a zkuste s ní pomocí uvedených knihoven (viz příklady z hodiny) splnit následující úlohy:

PS: Formát Pillow pro zápis RGB-obrázku je nepřekvapivě 'RGB'.