Python patří mezi nejvíce preferované programovací jazyky současnosti.
A není divu, jelikož s ním lze vytvářet jak nenáročné skripty pro automatizaci, tak i komplexní aplikace využívající strojové učení. Python vám otevírá široké možnosti a jeho studium vás jistě bude bavit.
Úvodní pohled na Python
Python si získal obrovskou popularitu mezi vývojáři. Jeho syntaxe je přehledná a srozumitelná, což z něj činí skvělý nástroj pro tvorbu automatizačních skriptů a nejrůznějších aplikací.
Mezi typické příklady jeho využití patří:
- Vývoj robotických systémů
- Získávání dat z webových stránek (web scraping)
- Aplikace strojového učení, vizualizace a analýza dat
- Tvorba webových aplikací s využitím frameworků jako Django a Flask
- Vývoj her díky knihovně Pygame
- Tvorba mobilních aplikací s frameworky typu Kivy
V tomto článku se zaměříme na několik oblastí, kde se Python uplatňuje. Prostřednictvím příkladů vám ukážeme, jaké zajímavé projekty lze s Pythonem realizovat. Pokud s Pythonem teprve začínáte, doporučujeme vám nějaký online kurz!
Pojďme se do toho pustit!
Python ve vývoji webu
Python nabízí robustní podporu pro tvorbu webových aplikací. S frameworky jako Django a Flask máte k dispozici mocné nástroje. Python se primárně používá na serverové straně a bez problémů se integruje s frontendovými technologiemi. Typicky se kombinuje s JavaScriptem, který se stará o interakci v prohlížeči, zatímco Python obstarává logiku a práci s daty na serveru.
Django patří k nejpopulárnějším frameworkům pro vývoj webu v Pythonu. Poskytuje strukturovanou platformu s připravenými nástroji pro práci s databázemi. Flask je pak vhodnější pro menší a jednodušší projekty, kde je potřeba rychle nastavit minimální strukturu.
Kromě těchto frameworků existuje celá řada knihoven, které usnadňují vývoj webových aplikací v Pythonu.
Zde je několik zdrojů, kde můžete začít s vývojem webu v Pythonu:
Příklad – Přístup k souborům počítače z mobilu
Můžete si jednoduše zpřístupnit soubory vašeho počítače spuštěním jednoduchého souborového serveru. Stačí se přesunout do adresáře, ke kterému chcete mít přístup, a spustit následující příkaz v terminálu:
# Pro Python verze >= 3.X python3 -m http.server # Pro Python verze >= 2.X a < 3.X python -m SimpleHTTPServer # Výchozí port: 8000
Tímto spustíte server, ke kterému se můžete připojit v rámci stejné sítě. Na svém mobilu se připojte ke stejné Wi-Fi síti nebo využijte hotspot z notebooku. V prohlížeči mobilu pak zadejte adresu:
Vaši IP adresu zjistíte pomocí příkazu `ifconfig` (na Linuxu a macOS). Zajímat vás bude vaše lokální IP adresa, která obvykle začíná čísly 192.168….
Pokud je například vaše IP adresa 192.168.43.155 a používáte výchozí port, měli byste v prohlížeči na mobilu zadat:
192.168.43.155:8000. Tímto se vám zobrazí obsah aktuálního adresáře.
Automatizace a skriptování s Pythonem
Pokud jste inženýr, pravděpodobně máte v oblibě automatizaci úkolů. Python je v tomto ohledu skvělým pomocníkem.
S Pythonem lze s několika řádky kódu automatizovat spoustu věcí, od plánování úloh až po stahování videí z YouTube.
Zde je několik užitečných skriptů a balíčků, které můžete využít:
Příklad – Převod CSV do formátu JSON
Převod CSV souboru do formátu JSON je v Pythonu záležitostí jediného příkazu!
Vyzkoušejte:
python -c "import csv,json;print json.dumps(list(csv.reader(open('vas_soubor.csv'))))"
Pouze nahraďte ‚vas_soubor.csv‘ názvem vašeho souboru a získáte JSON výstup.
Jednoduché, že?
Tvorba her s Pythonem
Python umožňuje vývoj her a knihovna Pygame je v tomto ohledu velmi užitečná. Podporuje práci s grafikou, hudbou, zvukem i videem. Dále je tu Kivy, multiplatformní framework, se kterým lze vytvářet hry pro Windows, Mac, Linux, Android a iOS.
Užitečné zdroje pro vývoj her
Příklad – Hra šibenice v terminálu
Zde je jednoduchý program v Pythonu pro hru šibenice, který si můžete vyzkoušet v terminálu. Kód by se dal ještě zkrátit a nechám to jako cvičení pro vás!
# hangman.py #importování modulu pro čas import time import random turns = 10 print "Ahoj, zahrajeme si šibenici! Máš " + str(turns) + " pokusů!" print "" # krátké zpoždění time.sleep(0.5) # seznam slov ze kterých se bude hádat wordList = ["geekflare", "super", "python", "kouzlo"] word = random.choice(wordList) guesses="" # smyčka dokud zbývají pokusy while turns > 0: wrong = 0 for char in word: if char in guesses: print char, else: print "_", wrong += 1 print("n") if wrong == 0: print "Vyhrál jsi :)" break print guess="" if len(guess) < 1: guess = raw_input("Hadej písmeno nebo celé slovo: ")[0] guesses += guess if guess not in word: turns -= 1 print "Špatně" print "Zbývá ti", + turns, ' pokusů!' if turns == 0: print "Prohrál jsi :("
Výstup by měl vypadat nějak takto:
Web scraping s Pythonem
Denně se setkáváme s velkým množstvím dat na internetu. Představte si, jak užitečné by bylo mít snadný přístup k těmto datům. Právě o to se stará web scraping a díky Pythonu a jeho knihovnám je to hračka. Webová data bývají často nestrukturovaná, ale Python nabízí efektivní způsoby, jak je analyzovat a zpracovávat.
Některé populární knihovny pro web scraping:
Ukážeme si příklad, jak můžete získat kurzovní lístek z webové stránky x-rates.com:
Příklad – Získání aktuálního kurzu měny vůči USD
Použijeme Python k získání kurzovního lístku:
import requests from bs4 import BeautifulSoup URL = "https://www.x-rates.com/table/?from=USD&amount=1" r = requests.get(URL) soup = BeautifulSoup(r.content, 'html.parser') ratelist = soup.findAll("table", {"class": "ratesTable"})[0].findAll("tbody") for tableVal in ratelist: trList = tableVal.findAll('tr') for trVal in trList[:6]: print(trVal.text)
Tento kód vám vypíše hodnotu 1 USD v různých měnách.
Data Science a Machine Learning s Pythonem
Data science a machine learning patří v dnešní době k nejvíce diskutovaným tématům. Jsou to technologie budoucnosti.
Python je skvělý jazyk pro práci s daty, jejich analýzu i implementaci komplexních algoritmů. Analýza a vizualizace dat se s knihovnami jako NumPy, scipy, scikit-learn atd. stává jednoduchou záležitostí.
Python je hojně využíván v aplikacích náročných na data i v machine learningu díky populárním knihovnám jako:
Existuje mnoho nástrojů pro deep learning, které podporují Python. Mezi oblíbené knihovny patří:
Dalším důvodem popularity Pythonu je, že i složité modely strojového učení se dají implementovat s 20-40 řádky kódu. Podívejte se na tento tutoriál, kde se dozvíte, jak snadná je vizualizace dat v Pythonu.
Závěrem
Tento článek vám představil různé oblasti, kde se Python uplatňuje. Uvedené příklady jsou jednoduché, ale s Pythonem lze vytvářet mnohem sofistikovanější aplikace. Doufám, že jste se dozvěděli něco nového!
Pokračujte v objevování. Ať se vám daří!