Tyto stránky již nejsou udržovány. Obsah je postupně přesouván/aktualizován na adrese chytrosti.marrek.cz.
1560/6046
Obsah:
Python je moderní, robustní, výkonný, interpretovaný jazyk, který vznik s důrazem na jednoduchost a přehlednost. Python je vyvíjen jako open source, což mimo jiné znamená, že je k dispozici zcela zdarma pro mnoho platforem a operačních systémů.
Python je také výborným nástrojem pro Elektrotechnika, protože existují kvalitní knihovny, pro vědecké výpočty a vizualizaci dat.
Pokud vás zajímá víc o tom proč?, přečtěte si můj pokus o reklamu na Python.
Python má poměrně velkou uživatelskou komunitu. Oficiální stránky najdete na python.org, českou komunitu potom na py.cz a python.cz. Jsou to myslím místa, kde je dobré začít. Najdete zde vše, co pro začátek potřebujete. Mimo jiné také diskusní fórum nebo seznam tutoriálů a literatury.
Pokud hledáte knihu, jistě stojí za to zdůraznit volně šiřitelnou publikaci Ponořme se do Pythonu 3, která má i svou on-line verzi.
Python je v současné době ve fázi přechodu od starší řady 2.x k nové řadě 3.x, která přináší řadu vylepšení, ale také řadu nekompatibilit, takže kód napsaný např. pro v2.7 pod v3.2 jistě nepoběží. Řadě v3 patří budoucnost, ale naprostá většina knihoven a distribucí je stále ještě postavena na řadě v2.
Naše výuka bude postavena na Pythonu řady dva, tedy verze 2.X. Pokud se
budete chtít Pythonem zabývat dál a nebudete vázáni dostupnými knihovnami,
jistě vám přechod nebude dělat problém -- je to sice jinak, ale je to lépe.
O změnách mezi od 2 k 3 se můžete dočíst
více nebo
ještě více
na root.cz.
Součástí instalace Pythonu je skript 2to3
, který kód verze 2 automaticky
převede do verze 3.
Instalační balíček pro M$ Windows můžete jednoduše stáhnout z python.org a nainstalovat.
Pro plnohodnotnou práci, ale budete nejspíš potřebovat i knihovny. Elektrotechnikům se hodí hlavně NumPy, SciPy a Matplotlib. Proto doporučuji distribuci (nebo chcete-li balíček) Python(x,y), pomocí které poměrně jednoduše nainstalujete Python, vývojové prostředí a potřebné knihovny.
(Od verze 2.7.5.0 již nejsou podporovány Windows XP. Pokud používáte tento operační systém, stáhněte si verzi.)
Při instalaci je možné vybrat konkrétní balíčky, které se budou instalovat. Pokud nevíte, co vybrat a co ne, ponechte instalátor ve výchozím nastavení. Pro samotnou práci doporučuji prostředí Spyder.
Na mnou doporučovaném operačním systému Debian Linux zadáte příkaz:
# aptitude install python-numpy python-scipy python-matplotlib spyder
případně:
# aptitude install python-doc python-numpy-doc python-matplotlib-doc
(a pak se podívejte do adresáře /usr/share/doc/<balík>)
Hlavním zdrojem dokumentace jsou jistě stránky doc.python.org. Pokud hledáte něco česky, tak na py.cz je seznam návodů, tutoriálů a literatury.
Od základu:
Matplotlib:
Dále bych zde rád upozornil na následující:
Python jak motor webu:
Pro tvorbu GUI v Pythonu máme několik možností:
Výhodou knihovny Tk je, že ji nemusíte nijak speciálně instalovat. Je přímo součástí instalace Pythonu. Jako nevýhoda se často uvádí její poněkud archaický vzhled. Osobně se ale domnívám, že to zase není tak hrozné a je to vyváženo jednoduchostí. Tato knihovna má vše, co pro svoje programy můžete potřebovat.
Podařenou českou dokumentaci a návod pro práci s Tk v Pythonu najdete na http://tkinter.programujte.com/. Na serveru programujte.com najdete i několik článků ohledně Pythonu a TK.
Velice jednoduše se dá TK použít s pomocí modulu EasyGUI.
Qt je jedna ze dvou nejpopulárnějších multiplatformních knihoven pro vytváření programů s grafickým uživatelským rozhraním. Knihovna nabízí několik licenčních modelů. Jednoduše lze říci, že pokud hodláte své aplikace šířit jako Open source můžete knihovnu libovolně používat. Pokud hodláte vyvíjet uzavřené aplikace musíte platit.
Qt je součástí distribuce Pythonxy takže se stačí ponořit do dokumentace obsažené přímo v distribuci.
Modul, který vám umožní pracovat s Qt se jmenuje PyQt. Takže stačí pohledat a začíst se:
Knihovna GTK je je tou druhou ze dvou nejpopulárnějších multiplatformních knihoven pro vytváření programů s grafickým uživatelským rozhraním. Nemá žádná licenční omezení ani pro vytváření komerčních aplikací.
Opět stačí hledat a začíst se:
wxWidgets je vlastně nadstavbou nad běžně používané grafické knihovny na daných platformách. To znamená, že program spuštěný na Linuxu bude používat GTK nebo Qt, a stejný program spuštěný na Windows bude použít Windows API.