Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Nebojte se hroznýše!

Přestože slovo Python (Hroznýš) zní přímo děsivě, nemusíte se ho bát. Python je totiž interpretovaný, interaktivní, snadno portovatelný a objektově orientovaný programovací jazyk vysoké úrovně. Podporuje například dynamické typy nebo výjimky a má velmi čistou syntaxi. Rád bych vám ho trošku představil.

Tweetni to Twitter Jaggni to! Jagg Del.icio.us Delicious

Hned zpočátku vás asi napadne jedna otázka: „Proč zrovna hroznýš?“ Je to jednoduché: původní autor jazyka, pan Guido van Rossum, měl rád komedii „Monty Python's Flying Circus“, která běžela v 70. letech na BBC a rozhodl se pojmenovat jazyk stejně. Jazyk je vyvíjen zhruba od roku 1990. Dnes se na vývoji podílí široká komunita lidí a byla vytvořena asociace PSA (Python Software Activity), která koordinuje jeho vývoj. Mezi největší přednosti Pythonu odborníci řadí zejména to, že je to jazyk vysoké úrovně (ne jako například Java, která je považována za jazyk nízké úrovně) a že je snadno rozšiřitelný.

Python je interpretovaný a tudíž ke svému životu potřebuje interpretr. Tyto interpretry samozřejmě existují pro mnoho operačních systémů (pochopitelně včetně Linuxu). Interpretované jazyky mají několik výhod a nevýhod. K výhodám se zcela jistě počítá větší bezpečnost programu. Interpretr hlídá věci, které by zkompilované programy hlídat nemohou (např. meze polí) a umožňuje efektivní ladění. Druhou stejně důležitou kladnou vlastností je přenositelnost zdrojového kódu – stačí jen nainstalovat na daný systém interpretr. I když se ale Python řadí mezi interpretovanými jazyky (co se týče rychlosti) ke špičce, nikdy nebude generovaný kód tak efektivní, jako např. od C++ kompilátoru, což je jeho hlavní nevýhoda. V dnešní době (stovky megabajtů paměti a gigahertzové procesory) už ale nezáleží, zda se okno aplikace překreslí o několik milisekund později a kritickou část aplikace, která vykonává vlastní výpočty, je možno psát v C/C++ a k Pythonu ji velmi jednoduše (SWIG) připojit. Python je také ideální pro výuku programování (objektového) právě díky interpretru, který se dá spustit a programátor může jednoduše a hlavně přímo (bez jakékoliv kompilace) začít programovat.

Zda máte či nemáte v systému Python instalovaný zjistíte snadno. Napište

root# python
Python 1.5.2 (#1, Sep 17 1999, 20:15:36)  [GCC egcs-2.91 Linux]
Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam
>>>

Pokud se spustí interpretr, vypíše informaci o verzi a čeká na příkaz (pokud znáte Scheme či Perl, je to podobné). Hned ze začátku Python můžeme vyzkoušet z malé násobilky.

>>>3*4
14
>>>

Jestliže jste dostali stejný výsledek jako já, tak vězte, že máte velké problémy a měli byste uvažovat o novém hardwaru, protože 3*4 je rovno 12 (byl to takový chyták :-))) Ne teď vážně, Python je opravdu výborný nejen pro výuku, ale dá se využít jako kvalitní kalkulačka.

>>>#uvidime jak jsi na tom s komplexnimi cisly
... a=3.5+0.5j
>>> a.real
3.5
>>> a.imag
0.5

Jak vidno, komplexní čísla ho nemohou v žádném případě zaskočit. Všimněte si tří teček místo „>>>“ interpretr tím naznačuje, že očekává pokračování příkazu. Znak „#“ je používán pro komentář. Interpretr se ukončuje „EOFem“ (CTRL+D).

Programy se zpravidla skládají z několika zdrojových souborů – stejně tomu tak je u Pythonu. Zdrojové soubory mají obvykle příponu „.py“. Virtuální počítač si vytváří (kompiluje) bytekód, který ukládá pod příponou „.pyc“ (stejně tak, jako u Javy soubor .class). Můžete se také setkat se soubory „.pyd“, které obsahují binární kód knihoven psaných v nativním jazyce operačního systému. Pokud budete chtít programy distribuovat v binární podobě, je možno pomocí utilitky freeze.py vytvořit spustitelný program (s interpretem) pro daný systém. Nevýhodou je, že takové spustitelné soubory jsou poměrně velké (několik MB), což ale v dnešní době plné různých vizuálních builderů není až takovou překážkou.

Pokud budete chtít pomocí Pythonu dělat GUI aplikace, musíte si stáhnout nějakou knihovnu (wxPython, TCL…). Asi jako nejvýhodnější se dnes jeví knihovna wxPython. Je snadno portovatelná, v pozadí stojí výborná knihovna wxWindows a je skvěle navržená (recenze zde – pozn. redakce). Pro Python se vyvíjí IDE prostředí (v TCL – je tedy použitelné všude) s názvem IDLE. Projekt je sice v raném stádiu, ale již dnes může nabídnout kvalitní vizuální debugger či zvýraznění syntaxe. Mám za to, že již dnes existují vývojové prostředí jak pro Windows, tak pro Linux/Unix. S pomocí wxPythonu můžete programovat skutečně rychle a efektivně:

davame_internetu_obsah
       
from wxPython.wx import *

def dialogTest():
        win = wxDialog(NULL, -1, "Toto je wxDialog",
                wxDefaultPosition, wxSize(350, 200))

        wxStaticText(win, -1, "Toto je wxDialog",
                wxPoint(20, 20))
        wxButton(win, wxID_OK, " OK ", wxPoint(75, 120),
                        wxDefaultSize).SetDefault()
        wxButton(win, wxID_CANCEL, " Zpět ",
                wxPoint(200, 120), wxDefaultSize)

        val = win.ShowModal()
        if val == wxID_OK:
                print("Stiskl jste OK\n")
        else:
                print("Stiskl jste Zpět\n")

dialogTest()

A perlička na závěr: o Python se začal intenzivně zajímat i Microsoft a v jejich Visual Studiu 7 bychom měli najít dva zbrusu nové produkty: Visual Python a Visual Perl (s oběma Microsoftu pomáhá firma ActiveState, která dodává na trh jeden z portů Pythonu a Perlu pro Windows). Proslýchá se, že by ActiveState měl dodat kompilátor do nativního strojového kódu pro x86 (zjednodušeně řečeno, z Visual Pythonu by měly vypadávat EXE soubory). No uvidíme.

ODKAZY
www.python.org
www.python.cz – zaregistrováno, uvidíme :-)
www.wxpython.org

Školení: Hackujeme operační systém Android

 

Školení vám ukáže, jak se dostat k Linuxu (tzv. "rootování"), který se pod hezkou tváří Androida skrývá a jak ho naplno využít. Pomůže vám to při záloze dat, zvětšování prostoru pro aplikace nebo sdílení připojení k internetu a pokud chcete z telefonu dostat opravdové maximum, ukážeme vám, jak v něm vyměnit kompletní systém za lepší.

Podrobnější informace a přihláška

Ohodnoťte jako ve škole:
Průměrná známka 3,00

Přehled názorů

Zajimam se o plazy a nemohu si...
Jiri Hosek 25. 8. 2000 08:15
Nový
├ 
Re: Zajimam se o plazy a nemohu si...
LZAP 25. 8. 2000 08:47
Nový
├ 
Re: Zajimam se o plazy a nemohu si...
Petr 26. 8. 2000 09:47
Nový
└ 
Re: Zajimam se o plazy a nemohu si...
Jiri Hosek 27. 8. 2000 11:02
Nový
Mel bych malou poznamku k obje...
Jirka Novak 25. 8. 2000 08:56
Nový
├ 
Re: Mel bych malou poznamku k obje...
RWS 25. 8. 2000 11:37
Nový
└ 
Re: Mel bych malou poznamku k obje...
Veros Kaplan 28. 8. 2000 08:12
Nový
Pokud chcete kvalitni jazyk, k...
kokot 25. 8. 2000 10:49
Nový
├ 
Re: Pokud chcete kvalitni jazyk, k...
pet 25. 8. 2000 11:37
Nový
├ 
Re: Pokud chcete kvalitni jazyk, k...
RWS 25. 8. 2000 11:38
Nový
├ 
Re: Pokud chcete kvalitni jazyk, k...
Milan Šorm 25. 8. 2000 12:56
Nový
└ 
Re: Pokud chcete kvalitni jazyk, k...
Michal Kara 28. 8. 2000 08:16
Nový
Libi se mi, ze si autor clanku...
Jiri Lenert 25. 8. 2000 13:50
Nový
Slysel jsem z nekolika zdroju ...
Podhajsky Jan 27. 8. 2000 12:12
Nový
├ 
Re: Slysel jsem z nekolika zdroju ...
d.f.h 27. 8. 2000 22:33
Nový
└ 
Re: Slysel jsem z nekolika zdroju ...
Podhajsky Jan 28. 8. 2000 15:06
Nový
BTW ten example nejede... ;o)...
JohnBlbec 27. 8. 2000 20:23
Nový
└ 
Re: BTW ten example nejede... ;o)...
LZAP 28. 8. 2000 08:25
Nový
opravte si odkaz
duxford 23. 9. 2005 12:40
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem