Úvod Lekce 1 Úvod Základní vlastnosti Pythonu, porovnání s ostatními jazyky, proč a k čemu lze používat Python. Stručné seznámení s vývojovým prostředím jazyka Python. C2184 Úvod do programování v Pythonu podzim 2014 Mgr. Stanislav Geidl C2184 Dvod do pragramcwánf v Pylhonu Historie Vlastnosti jazyka Využití Obliba Pythonu Instalace Začínáme Domácí úkoly Mgr. Stanislav Geidl Národní centrum pro výzkum biomolekul Masarykova univerzita Historie Pythonu • v roce 1990 Guido van Rossum z holandského CWI vytořil programovací ("skriptovací") jazyk a pojmenoval ho podle komické skupiny Monty Python • v lednu 1997 byla vydána verze 1.0 • 16. října 2000 byla vydána verze 2.0 • 3. prosince 2008 byla vydána verze 3.0 "There should be one- and preferably only one -obvious way to do it". Vlasnosti jazyka • interpretovaný programovací jazyk ("skriptovací jazyk") interpretovaný; python, perl, ruby, bash, ... ^—> C operační paměť R >o zdrojový kód a> echo . . . (instrukce j-i >ro if . . . cp >h procesoru) p a a w soubor (.cpp) C soubor (.exe) R kompilovaný; C, C++, C#, fortran, ... (zelená barva označuje kroky, které běží u uživatele) • interaktivní programovací jazyk • objektově orientovaný programovací jazyk • beztypový programovací jazyk • podpora různých architektur a operačních systému (UNIX včetně MacOS, Windows, MS-DOS, OS/2, nepřímo i iOS a Android) Uvod Mgr. Stanislav Geidl C2184 Dvod do pragrauncwánf Využití Obliba Pythonu Instalace Začínáme Domácí úkoly jednoduchý jazyk, který se snadno učí a je pedagogický mocný jazyk - výkonné vysokoúrovňové datové struktury neobsahuje magii narozdíl od perlu (nezaměňujte za "bez kouzla") používání Pythonu způsobuje menší nečitelnost - dá vám to práci napsat to nečitelně má dobrou dokumentaci import antigravity ... 9*. NIGHTJ EvERYTWNG 1S SO 5WE1. / HELLO WORLD ISM print "He/lu, worldl" I DUNNO— t DVNAWC TVPINO?/ COTE JOW U6! FROGOTiniNG IS FĽN ftWlNi it'S A WH0i£ (p) NEV V$RID uphere! BĽTHOUflRE; ycu r.wng? / i justtkfed "mŕtrs it? I ... I AL.50 SWED EVESVTHIM5 IN THE HEDICINE CWSI^ÍEX Q FOR LWAW50M k BUTI1HNKTHIS ' ^ [STHEFYTHON. Uvod Mgr. Stanislav Geidl C2184 Dvod do programováni v Pylhonu Využití Obliba Pythonu Instalace Začínáme Domácí úkoly Rychlost • interaktivní programovací jazyk, tzn. je pomalejší jak kompilované jazyky, ale není ani nejrychlejší mezi interpretovanými a není ani pomalý • Benchmark programovacích jazyků při použití v bioinformatice: http://www.bioinformatics.org/benchmark/results.html • Řešení je použití/implementace C/C++ kompilovaných knihoven pro Python. Uvod Mgr. Stanislav Geidl C2184 Dvod do programování v Pytánu Využití Obliba Pythonu Instalace Začínáme Domácí úkoly Speed Global alignment in seconds: This program performs a global alignment of two sequences and prints to the standard output the aligned sequences. Linux Windows C 0.38 0.12 C+ + 0.53 0.28 c# 0.62 0.37 Java 0.44 0.46 Perl 43.58 40.26 Python Z3.L8 L9.21 skriptování vědecké výpočty (chemoinformatika, bioinformatika, ...) webové aplikace administrace grafika audio networking hry aplikace pro chytré telefony Obliba programovacích jazyků podle TIOBE • http://www.tiobe.com/index.php/content/ paperinfo/tpci/index.html • výsledky pro září 2014: 2014 2013 Programovací jazyk Rating Změna 1 1 C 16,721 % - 0,25 % 2 2 Java 14,140 % - 2,01 % 3 4 Objective-C 9,935 % + 1,37 % 4 3 C++ 4,674 % - 3,99 % 5 6 C# 4,352 % - 1,21 % 6 7 Basic 3,547 % - 1,29 % 7 5 PHP 3,121 % - 3,31 % 8 8 Python 2,448 % - 0,39 % 9 9 JavaScript 2,448 % + 0,43 % 10 10 Transact-SQL 1,675 % - 0,32 % 11 11 Visual Basic .NET 1,532 % - 0,31 % 12 12 Perl 1,369 % - 0,31 % 13 13 Ruby 1,281 % -0,10% Obliba programovacích jazyků podle GitHubu To o p rogra m m i ng I a n gu ages o n GitHub by WTFs ŕn^f WO RI R 1/1/2012 - 9/23/2013 V-VVVW^LU b D or-SO f I D.D030 ^ n noín í? ■ s* n*- r Min í Data Source: Google BigQuery/GitHub Archive Uvod Mgr. Stanislav Geidl C2184 Úvod do programováni v Pythonu Historie Vlastnosti jazyka Využití Instalace Začínáme Domácí úkoly Firmy používající Python Goo Ie red hat SurveyMonkey J^slideshare Present Yourself ,^\^\ sun Dropbox mozilla Mgr. Stanislav Geidl Uvod do programování Historie Vlastnosti jazyka Využití Začínáme Domácí úkoly Piniereét = =—= FOUNDATION https://wiki.python.org/moin/OrganizationsUsingPython UNIH The power of shell is m youf hands V drtive vetsine je soucästi systemu ;) Instalace - Windows O Stáhněte instalační balíček z webu python.org: https://www.python.org/downloads/windows/. Stahujte verzi 2.7.8 © Spusťete instalátor a postupujte dle instrukcí. • Průvodce instalací najdete také zde: https://code.google.com/p/scato/wiki/howto. install_python_for_windows Editory a IDE • vývojová prostředí (IDE je zkratka z anglického Integrated Development Environment) • originální IDLE 1M Wing IDE http://wingware.com/ • textové editory • gedit • kate PSPad (doporučuji pro Windows) Uvod Mgr. Stanislav Geidl C2184 Úvod do programováni v Pythonu Historie Vlastnosti jazyka Využití Obliba Pythonu Instalace Domácí úkoly Hello World! print "Hello World!" Uvod Mgr. Stanislav Geidl O Vytvořte soubor MyFirstScript.py a spusťe ho pomocí $ python MyFirstScript.py © Spusťte z příkazové řádky $ python a kód zadejte interaktivně. (Ukončení interaktivního módu pomocí: quit (), exit () nebo [CTRL]+[D]) C2184 Úvod do programování v Pythonu Historie Vlastnosti jazyka Využití Obliba Pythonu Instalace Domácí úkoly Uvod Mgr. Stanislav Geidl O Nainstalujte a/nebo zkontrolujte funkčnost Pythonu na vašem počítači. © Vyzkoušejte si na vlastním počítači spustit Hello World! příklad, jak pomocí souboru, tak pomocí interaktivního módu. O Stáhněte ze studijních materiálu soubor homeworkOl .py, spusťete jej na vlastním počítači a výstup z programu uložte do textového souboru, který nahrajte do odevzdávárny. Nejpozději do 23. 9. 2014! C2184 Úvod do programováni Historie Vlastnosti jazyka Využití Obliba Pythonu Instalace Začínáme