Stručný přehled základů jazyka Python. Co můžete dělat s Pythonem

Python je široce používaný programovací jazyk na vysoké úrovni, který byl pojmenován po slavné britské komediální televizní show " Monty Pythonův létající cirkus" Jazyk Python má jednoduchou strukturu, ale neuvěřitelně flexibilní a výkonný. Vzhledem k tomu, že kód Pythonu je snadno čitelný a aniž by byl příliš rigidní v syntaxi, mnozí jej považují za nejlepší úvodní programovací jazyk.

Python - popis daného jazyka Foundation popisuje Python:

Python je interpretovaný, interaktivní, objektově orientovaný programovací jazyk. Zahrnuje moduly, výjimky, dynamické typování, dynamické datové typy na vysoké úrovni a třídy. Python kombinuje vynikající výkon s jasnou syntaxí. Poskytuje rozhraní pro mnoho systémových volání a knihoven, stejně jako různé okenní systémy, a je rozšiřitelný pomocí C a C++. Python se používá jako rozšiřující jazyk pro aplikace, které vyžadují programovací rozhraní. A konečně, Python je multiplatformní jazyk: běží na mnoha verzích Unixu, Maců a počítačů se systémem MS-DOS, Windows, Windows NT a OS/2.

Který programovací jazyk byste se měli naučit jako první?

Můžete se začít učit programovací jazyk Python. Chcete-li ilustrovat, jak se Python liší od ostatních úvodních jazyků, vzpomeňte si na dobu, kdy jste byli teenager.

Naučit se programovat v Pythonu je jako řídit minivan svých rodičů. Jakmile s ním několikrát projedete na parkovišti, začnete chápat, jak s autem zacházet.

Snažím se naučit programovat pomocí C ( nebo dokonce assembler) je to jako učit se řídit sestavením minivanu rodičů. Budete roky trčet v garáži při sestavování dílů, a až budete plně rozumět tomu, jak auto funguje, a budete schopni odstraňovat a předvídat budoucí problémy, shoříte dřív, než se vůbec dostanete za vůz. kolo.

Výhody Pythonu

Python je univerzální jazyk pro začátečníky. Pomocí Pythonu můžete automatizovat pracovní postupy, vytvářet webové stránky a vytvářet aplikace a hry pro stolní počítače. Mimochodem, poptávka po vývojářích Pythonu ( PostgreSQL, OOP, Flask, Django) za posledních několik let dramaticky vzrostl ve společnostech, jako je Instagram, Reddit, Tumblr, YouTube a Pinterest.

Univerzální jazyk na vysoké úrovni

Python je programovací jazyk na vysoké úrovni. Pomocí něj můžete vytvořit téměř jakýkoli typ softwaru. Tato všestrannost vás udrží v zájmu, když vyvíjíte programy a řešení, která se zaměřují na vaše zájmy, spíše než abyste uvízli v plevelu jazyka, který by se staral o jeho syntaxi.

Interpretovaný jazyk

Programovací jazyk Python pro začátečníky je interpretován, což znamená, že nemusíte vědět, jak kompilovat kód. Protože zde není žádný kompilační krok, zvyšuje se produktivita a výrazně se zkracuje čas na úpravy, testování a ladění. Stačí si stáhnout IDE ( IDE), napište svůj kód a klikněte na „Spustit“ ( Běh).

Čitelnost kódu je klíčová

Jednoduchá, snadno pochopitelná syntaxe Pythonu klade důraz na čitelnost a nastavuje dobrý styl programování. S Pythonem můžete vyjádřit svůj koncept v méně řádcích kódu. Tento jazyk vás také nutí přemýšlet o programové logice a algoritmech. Z tohoto důvodu se často používá jako skriptovací nebo integrační jazyk ( lepidlo jazyk) propojovat existující komponenty dohromady a psát velké objemy snadno čitelného a spustitelného kódu v krátkých časových obdobích.

Je to prostě zábava

Nemůžete pojmenovat programovací jazyk po Monty Python, aniž byste měli smysl pro humor. Kromě toho bylo provedeno testování s cílem porovnat čas potřebný k napsání jednoduchého skriptu v různých jazycích ( Python, Java, C, J, BASIC):

...Python vyžaduje méně času, méně řádků kódu a méně konceptů k dosažení vašeho cíle... A ke všemu je programování v Pythonu zábava! Zábava a časté úspěchy posilují důvěru a zájem studentů, kteří se tak lépe připravují na pokračování v učení Pythonu.

Překlad článku „Proč se učit Python? “ připravil přátelský projektový tým.

Dobrý Špatný

Program je sada algoritmů, které zajišťují provedení nezbytných akcí. Konvenčně stejným způsobem můžete naprogramovat běžného člověka psaním přesných příkazů tak, aby například připravoval čaj. Pokud druhá možnost používá přirozenou řeč (ruštinu, ukrajinštinu, angličtinu, korejštinu atd.), pak bude počítač potřebovat speciální programovací jazyk. Python je jedním z nich. Programovací prostředí následně příkazy přeloží a lidský cíl, pro který byl algoritmus vytvořen, bude splněn. Python má svou vlastní syntaxi, o které bude řeč níže.

Historie jazyka

Vývoj začal v 80. letech a skončil v roce 1991. Jazyk Python vytvořil Guido van Rossum. Přestože hlavním symbolem Pythonu je had, byl pojmenován po americké komediální show.

Při vytváření jazyka vývojář použil některé příkazy vypůjčené z existujících Pascal, C a C++. Poté, co byla první oficiální verze online, se celá skupina programátorů zapojila do jejího vylepšování a vylepšování.

Jedním z faktorů, který umožnil Pythonu stát se docela slavným, je jeho design. Je uznáván mnoha velmi úspěšnými specialisty jako jeden z nejlepších.

Vlastnosti Pythonu

Programovací jazyk Python bude vynikajícím učitelem pro začátečníky. Má poměrně jednoduchou syntaxi. Bude snadné porozumět kódu, protože neobsahuje mnoho pomocných prvků a speciální struktura jazyka vás naučí odsazovat. Dobře navržený program s malým počtem příkazů bude samozřejmě okamžitě srozumitelný.

Mnoho syntaktických systémů bylo vytvořeno pomocí objektově orientovaného programování. Python není výjimkou. Proč přesně se narodil? Začátečníkům usnadní učení a již kvalifikovaným zaměstnancům pomůže zapamatovat si některé prvky.

Syntaxe jazyka

Jak již bylo zmíněno, kód je poměrně snadný a snadno čitelný. Python má sekvenční příkazy, které jsou přesné při provádění. V zásadě se použité operátory nebudou zdát obtížné ani začátečníkům. To je to, co dělá Python odlišným. Jeho syntaxe je snadná a jednoduchá.

Tradiční operátoři:

  • Při nastavování podmínky byste měli použít konstrukci if-else. Pokud je takových čar příliš mnoho, můžete zadat příkaz elif.
  • Třída je pro pochopení třídy.
  • Jedním z jednoduchých operátorů je pass. Nedělá nic, hodí se pro prázdné bloky.
  • Cyklické příkazy jsou while a for.
  • Funkce, metoda a generátor jsou definovány díky def.

Kromě jednotlivých slov vám programovací jazyk Python umožňuje používat výrazy jako operátory. Použitím řetězců můžete snížit počet samostatných příkazů a závorek. Používají se i tzv. líné výpočty, tedy takové, které se provádějí, jen když to stav vyžaduje. Patří mezi ně a a nebo.

Proces psaní programu

Interpret funguje na jediném mechanismu: když napíšete řádek (za který dáte „Enter“), okamžitě se provede a člověk již vidí nějaký výsledek. To bude užitečné a docela pohodlné pro začátečníky nebo ty, kteří chtějí otestovat malý kousek kódu. V kompilovaných prostředích byste museli nejprve napsat celý program, teprve potom jej spustit a zkontrolovat chyby.

Programovací jazyk Python (pro začátečníky, jak se již ukázalo, je ideální) v operačním systému Linux umožňuje pracovat přímo v samotné konzoli. Na příkazový řádek byste měli napsat název kódu Python v angličtině. Vytvořit svůj první program nebude těžké. V první řadě stojí za zvážení, že tlumočník zde může sloužit jako kalkulačka. Protože mladí a začínající specialisté často nejsou spokojeni se syntaxí, můžete algoritmus napsat takto:

Po každém řádku musíte zadat „Enter“. Odpověď se zobrazí ihned po kliknutí na ni.

Data používaná Pythonem

Data, která počítače (a programovací jazyky) používají, přicházejí v několika typech, a to je zcela zřejmé. Čísla mohou být zlomková, celá, mohou sestávat z mnoha číslic nebo mohou být díky zlomkové části poměrně masivní. Aby se s nimi tlumočníkovi snáze pracovalo a aby pochopil, o co mu jde, měl by být specifikován konkrétní typ. Navíc je nutné, aby se čísla vešla do přidělené paměťové buňky.

Nejběžnější datové typy používané programovacím jazykem Python jsou:

  • Celé číslo. Hovoříme o celých číslech, která mají záporné i kladné hodnoty. V tomto typu je také zahrnuta nula.
  • Aby interpret pochopil, že pracuje se zlomkovými částmi, typ by měl být float point. Zpravidla se používá při použití čísel s proměnným bodem. Je třeba si uvědomit, že při psaní programu se musíte držet zápisu „3.25“ a nepoužívat čárku „3.25“.
  • V případě přidávání řetězců umožňuje programovací jazyk Python přidat typ řetězce. Často jsou slova nebo fráze uzavřeny v jednoduchých nebo

Nevýhody a výhody

V posledních několika desetiletích se lidé více zajímají o to, aby trávili více času správou dat a méně času jejich zpracováním pomocí počítačů. Jazyk, o kterém existují pouze pozitivní věci, je nejvyšším kódem.

Python nemá prakticky žádné nevýhody. Jedinou vážnou nevýhodou je pomalost provádění algoritmu. Ano, pokud to porovnáte s „C“ nebo „Java“, je to, upřímně řečeno, želva. To se vysvětluje tím, že toto

Vývojář se postaral o to, aby do Pythonu přidal ty nejlepší věci. Proto si při jeho používání můžete všimnout, že absorboval ty nejlepší vlastnosti ostatních vyšších programovacích jazyků.

V případě, že myšlenka implementovaná tlumočníkem není působivá, bude možné ji pochopit téměř okamžitě po napsání několika desítek řádků. Pokud se program vyplatí, lze kritickou část kdykoli vylepšit.

V současné době více než jedna skupina programátorů pracuje na vylepšení Pythonu, takže není pravda, že kód napsaný v C++ bude lepší než kód vytvořený pomocí Pythonu.

S kterou verzí je lepší pracovat?

V současné době jsou široce používány dvě verze takového syntaktického systému, jako je jazyk Python. Pro začátečníky bude výběr mezi nimi docela těžký. Je třeba poznamenat, že 3.x je stále ve vývoji (ačkoli uvolněný pro masy), zatímco 2.x je plně dokončená verze. Mnoho lidí doporučuje používat 2.7.8, protože prakticky nezdržuje ani nepadá. Ve verzi 3.x nedochází k žádným radikálním změnám, takže svůj kód můžete kdykoli přenést do programovacího prostředí pomocí aktualizace. Chcete-li stáhnout potřebný program, měli byste přejít na oficiální webovou stránku, vybrat svůj operační systém a počkat, až se stahování dokončí.

Kolik programovacích jazyků skutečně existuje? Je jich několik desítek. Jsou určeny pro různé úkoly, pro každý vkus, velikost a barvu. Proč jsem si vybral tento konkrétní jazyk? Python je schopen provádět velmi širokou škálu úkolů, od jednoduchých skriptů až po vytváření celých webových stránek. Python pro začátečníky je poměrně jednoduchý, stručný a snadno se učí.

Z tohoto článku se dozvíte:

Ahoj, ahoj! Gridin Semyon je v kontaktu. Konečně jsem se dostal k hlavnímu tématu tohoto blogu, programování inteligentních systémů pomocí Pythonu. Dlouho jsem se na to připravoval. A nyní jsem připraven vám psát zajímavé články a studovat toto téma do hloubky.

Proč to potřebuji? Pro začátek jsem si stanovil následující úkol týkající se rozvoje strojového učení a počítačového vidění.

Možná, když budu mít štěstí, skončím mezi vývojáři složitých robotických projektů, možná se stanu sám organizátorem a otevřu výrobu osobních robotů, nebo možná, možná... Když se nic nepovede, a Bůh žehnej mu, užívám si ten proces, ne výsledek.

Pak začnu svůj příběh))...

Vlastnosti programovacího jazyka Python

Jak jsem psal výše, tento jazyk plní velmi širokou škálu funkcí. Je prostě nemožné obsáhnout vše. Proto si před studiem položte otázku, proč to potřebuji? Jaké problémy vyřeším pomocí tohoto jazyka? Pokud jste odpověděli kladně, pokračujte.

Jak může být Python užitečný?

  1. Práce se soubory xml/html
  2. Práce s požadavky http
  3. GUI (grafické rozhraní)
  4. Vytváření webových skriptů
  5. Práce s FTP
  6. Práce s obrázky, audio a video soubory
  7. Robotika (použití jednodeskových počítačů)
  8. Matematické a vědecké počítačové programování

A podobně. Python je schopen vykonávat lví podíl rutinních úkolů.

V Pythonu můžete vytvářet zálohy, pracovat s e-maily, jednoduchou kalkulačkou a skriptem pro web. Jazyk není ničím omezen. Nejzajímavější je, že jej používají takoví IT giganti jako Google a Yandex.

V tomto článku vás provedeme programováním Pythonu od nuly.

Aby program fungoval na konkrétním zařízení, nezáleží na tom, jaký OS - windows, linux, RaspbianOS, MacOS. Je důležité, abyste měli tlumočníka, který příkazům rozumí a provádí je.

Proveďte následující: stáhněte si python IDE c oficiální zdroj.

Seznámení s tlumočníkem

Interpret tedy zpracovává textový kód programu. K dispozici je režim interaktivního vývojového prostředí. Můžete jej spustit několika způsoby:

  1. Z běžného příkazového řádku cmd zadejte příkaz python ;
  2. Z plochy (zástupce);
  3. Použití nabídky Start - Python IDLE;

Otevře se vám toto okno:

Mimochodem, shell lze také použít jako běžnou kalkulačku. Tento software vnímám jako příležitost k využití plného potenciálu jednodeskových počítačů.

Arduino má také svůj vlastní softwarový shell. Přečtěte si to.

Kde se začít učit python? Zkusíme napsat první program?

Vytvoření prvního programu

Program Python je prostý textový soubor s napsaným kódem. Přípona tohoto souboru je .py. Program můžete spustit zadáním příslušného názvu na příkazovém řádku. Pojďme napsat nejjednodušší standardní program "Ahoj světe!"

Úkolem je zobrazit na obrazovce „Ahoj světe!“. Spusťte Poznámkový blok.

Napíšeme následující kód:

Krajta

tisk ("Ahoj svět!!!")

tisk ("Ahoj svět!!!")

A uložte jej do složky za cestou C:\MyScripts. Do této složky doporučuji umístit všechny projekty.

Abychom mohli skript spustit, vyberte příkazový řádek a zadejte cestu k vašemu souboru:

O knihách. Ve skutečnosti, i když je jazyk jednoduchý, pokud jde o vytváření kódu, existuje mnoho nuancí a různých knihoven pro implementaci obrovské škály úkolů.

Nejlepší kniha o pythonu pro začátečníky je považována za tutoriál Mikea McGratha. Komplexní průvodce psaním kódu Python.

Omlouvám se za kvalitu fotky, jinak to nejde. Ostatní knihy zatím nedoporučuji kupovat, protože jsou ve skutečnosti objemné a objemné. Jako základ postačí McGrath.

Kluci, to je z mé strany vše, pokud máte nějaké dotazy, můžete mi kdykoli napsat. Přihlaste se k odběru novinek na blogu. Pošlete to svým přátelům. děkuji za pozornost.

S pozdravem Gridin Semyon

Kdysi dávno jsem se na uzavřeném fóru snažil učit Python. Obecně se tam věci zastavily. Bylo mi líto písemných lekcí a rozhodl jsem se je zveřejnit pro širokou veřejnost. Zatím úplně první, nejjednodušší. Co se stane potom, je zajímavější, ale možná to nebude zajímavé. Obecně bude tento příspěvek testovacím balónkem, pokud se vám bude líbit, zveřejním jej dále.

Python pro začátečníky. Kapitola první. "O čem to mluvíme"

Pro každý případ trochu nudné „evangelium“. Pokud jste z něj unavení, můžete pár odstavců přeskočit.
Python (vyslovuje se spíše „Python“ než „python“) je skriptovací jazyk vyvinutý Guido van Rossumem jako jednoduchý jazyk, který se začátečníkům snadno naučí.
V dnešní době je Python široce používaný jazyk, který se používá v mnoha oblastech:
- Vývoj aplikačního softwaru (například linuxové nástroje yum, pirut, system-config-*, Gajim IM klient a mnoho dalších)
- Vývoj webových aplikací (nejvýkonnější Aplikační server Zope a na jeho základě vyvinutý CMS Plone, na kterém funguje např. web CIA, a spousta frameworků pro rychlý vývoj aplikací Plones, Django, TurboGears a mnoho dalších)
- Použití jako vestavěný skriptovací jazyk v mnoha hrách, a to nejen (v kancelářském balíku OpenOffice.org, editoru Blender 3d, Postgre DBMS)
- Použití ve vědeckých výpočtech (s balíčky SciPy a numPy pro výpočty a PyPlot pro kreslení grafů se Python stává téměř srovnatelným s balíčky jako MatLab)

A to samozřejmě není úplný seznam projektů využívajících tento úžasný jazyk.

1. Samotný tlumočník, můžete jej získat zde (http://python.org/download/).
2. Vývojové prostředí. Není nutné začít a IDLE obsažené v distribuci je vhodné pro začátečníky, ale pro seriózní projekty potřebujete něco vážnějšího.
Pro Windows používám nádherný lehký PyScripter (http://tinyurl.com/5jc63t), pro Linux - Komodo IDE.

I když pro první lekci bude stačit jen samotný interaktivní shell Pythonu.

Stačí spustit python.exe. Vstupní výzva na sebe nenechá dlouho čekat, vypadá takto:

Programy můžete také zapisovat do souborů s příponou py ve svém oblíbeném textovém editoru, který do textu nepřidává vlastní značkovací znaky (žádný Word nebude fungovat). Je také žádoucí, aby tento editor uměl vytvářet „chytré karty“ a nenahrazoval mezery kartami.
Chcete-li spustit soubory ke spuštění, můžete na ně dvakrát kliknout. Pokud se okno konzoly zavře příliš rychle, vložte na konec programu následující řádek:

Poté tlumočník počká, až na konci programu stisknete enter.

Nebo přidružte soubory py v Far k Pythonu a otevřete je stisknutím klávesy Enter.

Nakonec můžete použít jedno z mnoha pohodlných IDE pro Python, které poskytují možnosti ladění, zvýrazňování syntaxe a mnoho dalších „vymožeností“.

Trochu teorie.

Pro začátek je Python silně dynamicky typovaný jazyk. Co to znamená?

Existují jazyky se silným psaním (pascal, java, c atd.), ve kterých je typ proměnné určen předem a nelze jej změnit, a existují jazyky s dynamickým psaním (python, ruby, vb ), ve kterém je typ proměnné interpretován v závislosti na přiřazené hodnotě.
Dynamicky typované jazyky lze rozdělit na 2 další typy. Přísné, které neumožňují implicitní převod typů (Python), a volné, které provádějí implicitní převody typů (například VB, do kterého snadno přidáte řetězec „123“ a číslo 456).
Poté, co jsme se zabývali klasifikací Pythonu, zkusme si trochu „pohrát“ s interpretem.

>>> a = b = 1 >>> a, b (1, 1) >>> b = 2 >>> a, b (1, 2) >>> a, b = b, a >>> a , b (2, 1)

Vidíme tedy, že přiřazení se provádí pomocí znaménka =. Hodnotu můžete přiřadit několika proměnným najednou. Když interpretu zadáte název proměnné interaktivně, vytiskne její hodnotu.

Další věc, kterou potřebujete vědět, je, jak jsou konstruovány základní algoritmické jednotky – větve a smyčky. Pro začátek je potřeba malá pomoc. V Pythonu neexistuje žádný speciální oddělovač pro bloky kódu, které plní jejich roli. To znamená, že to, co je napsáno se stejným odsazením, je jeden příkazový blok. Zpočátku se to může zdát divné, ale po chvíli zvykání si uvědomíte, že toto „vynucené“ opatření vám umožňuje získat velmi čitelný kód.
Tedy podmínky.

Podmínka je specifikována pomocí příkazu if, který končí „:“. Alternativní podmínky, které budou splněny, pokud první kontrola selže, jsou specifikovány operátorem elif. Nakonec else určuje větev, která bude provedena, pokud nebude splněna žádná z podmínek.
Všimněte si, že po napsání if použije tlumočník výzvu "..." k označení, že čeká na další vstup. Abychom mu řekli, že jsme skončili, musíme zadat prázdný řádek.

(Příklad s větvemi z nějakého důvodu porušuje značení na hubu, i přes tanečky s tagy pre a code. Omlouvám se za nepříjemnosti, hodil jsem to sem pastebin.com/f66af97ba, pokud mi někdo řekne, co je špatně, být velmi vděčný)

Cykly.

Nejjednodušším případem smyčky je smyčka while. Bere podmínku jako parametr a provádí se, dokud je pravdivá.
Zde je malý příklad.

>>> x = 0 >>> zatímco x<=10: ... print x ... x += 1 ... 0 1 2 ........... 10

Vezměte prosím na vědomí, že protože tisk x a x+=1 jsou zapsány se stejným odsazením, jsou považovány za tělo smyčky (pamatujete, co jsem řekl o blocích? ;-)).

Druhým typem smyčky v Pythonu je smyčka for. Je to podobné jako u smyčky foreach v jiných jazycích. Jeho syntaxe je zhruba následující.

Pro proměnnou v seznamu:
týmy

Proměnné budou postupně přiřazeny všechny hodnoty ze seznamu (ve skutečnosti může existovat nejen seznam, ale i jakýkoli jiný iterátor, ale tím se zatím netrapme).

Zde je jednoduchý příklad. Seznam bude řetězec, což není nic jiného než seznam znaků.

>>> x = "Ahoj, Pythone!" >>> pro char v x: ... tisk char ... H e l ........... !

Tímto způsobem můžeme rozložit řetězec na znaky.
Co dělat, když potřebujeme smyčku, která se opakuje určitý počet opakování? Je to velmi jednoduché, funkce rozsahu vám pomůže.

Na vstupu přebírá jeden až tři parametry, na výstupu vrací seznam čísel, kterými můžeme „procházet“ operátorem for.

Zde je několik příkladů použití funkce range, které vysvětlují roli jejích parametrů.

>>> rozsah(10) >>> rozsah(2, 12) >>> rozsah(2, 12, 3) >>> rozsah(12, 2, -2)

A malá ukázka se smyčkou.

>>> pro x v rozsahu (10): ... tisk x ... 0 1 2 ..... 9

I/O

Poslední věc, kterou byste měli vědět, než začnete plně používat Python, je způsob, jakým se v něm provádí vstup a výstup.

Pro výstup se používá příkaz print, který vypíše všechny své argumenty v podobě čitelné pro člověka.

Pro vstup z konzole se používá funkce raw_input(prompt), která zobrazí výzvu a čeká na vstup uživatele, přičemž jako hodnotu vrátí to, co uživatel zadal.

X = int(raw_input("Zadejte číslo:")) print "Druhá druhá mocnina tohoto čísla je ", x * x

Pozor! Navzdory existenci funkce input() s podobnou akcí se její použití v programech nedoporučuje, protože interpret se snaží provádět syntaktické výrazy zadané pomocí něj, což je vážná díra v zabezpečení programu.

To je na první lekci vše.

Domácí úkol.

1. Vytvořte program pro výpočet přepony pravoúhlého trojúhelníku. Délka nohou je požadována od uživatele.
2. Vytvořte program pro hledání kořenů kvadratické rovnice v obecném tvaru. Koeficienty jsou požadovány od uživatele.
3. Vytvořte program pro zobrazení násobilky podle čísla M. Tabulka je sestavena od M * a, do M * b, kde M, a, b jsou požadovány od uživatele. Výstup by měl být proveden ve sloupci, jeden příklad na řádek v následujícím tvaru (například):
5 x 4 = 20
5 x 5 = 25
A tak dále.

Programování v Pythonu

Část 1. Možnosti jazyka a základní syntaxe

Obsahová řada:

Vyplatí se učit Python?

Python je jedním z nejpopulárnějších moderních programovacích jazyků. Je vhodný pro řešení různých problémů a nabízí stejné možnosti jako jiné programovací jazyky: dynamiku, podporu OOP a multiplatformní. Vývoj Pythonu započal Guido Van Rossum již v polovině 90. let 20. století, takže nyní bylo možné zbavit se standardních „dětských“ nemocí, výrazně rozvinout nejlepší aspekty jazyka a přilákat mnoho programátorů používajících Python k implementaci svých projekty.

Mnoho programátorů se domnívá, že je nutné se učit pouze „klasické“ programovací jazyky, jako je Java nebo C++, protože jiné jazyky stejně neposkytnou stejné schopnosti. V poslední době se však objevilo přesvědčení, že je vhodné, aby programátor znal více než jeden jazyk, protože to rozšiřuje jeho obzory, umožňuje kreativněji řešit problémy a zvyšuje jeho konkurenceschopnost na trhu práce.

Naučit se dokonale dva jazyky, jako je Java a C++, je poměrně obtížné a zabralo by to spoustu času; navíc mnoho aspektů těchto jazyků je ve vzájemném rozporu. Python je zároveň ideální pro roli druhého jazyka, protože je okamžitě absorbován díky již existující znalosti OOP a skutečnosti, že jeho schopnosti nejsou v rozporu, ale doplňují zkušenosti získané prací s jiným programováním. jazyk.

Pokud programátor v oblasti vývoje softwaru teprve začíná, pak bude Python ideálním „úvodním“ programovacím jazykem. Díky své stručnosti vám umožní rychle zvládnout syntaxi jazyka a absence „dědictví“ v podobě axiomů utvářených po mnoho let vám pomůže rychle zvládnout OOP. Díky těmto faktorům bude křivka učení Pythonu poměrně krátká a programátor bude moci přejít od vzdělávacích příkladů ke komerčním projektům.

Ať je tedy čtenářem tohoto článku kdokoli - zkušený programátor nebo začátečník v oblasti vývoje softwaru, odpověď na otázku, která je názvem této sekce, by měla znít jednoznačně „ano“.

Tato série článků je navržena tak, aby vám pomohla úspěšně překonat křivku učení poskytováním informací od nejzákladnějších principů jazyka až po jeho pokročilé možnosti integrace s jinými technologiemi. První článek se bude zabývat základními funkcemi a syntaxí Pythonu. V následujícím textu se podíváme na pokročilejší aspekty práce s tímto populárním jazykem, zejména na objektově orientované programování v Pythonu.

Architektura Pythonu

Jakýkoli jazyk, ať už pro programování nebo komunikaci, se skládá minimálně ze dvou částí – slovní zásoby a syntaxe. Jazyk Python je organizován přesně stejným způsobem, poskytuje syntaxi pro vytváření výrazů, které tvoří spustitelné programy, a slovník - sadu funkcí ve formě standardní knihovny a zásuvných modulů.

Jak již bylo zmíněno, syntaxe Pythonu je poměrně stručná, zejména ve srovnání s Javou nebo C++. Na jednu stranu je to dobře, protože čím je syntaxe jednodušší, tím se snáze učí a tím méně chyb můžete při jejím používání udělat. Tyto jazyky však mají nevýhodu - mohou být použity k přenosu nejjednodušších informací a nemohou vyjádřit složité struktury.

To neplatí pro Python, protože je to jednoduchý, ale zjednodušený jazyk. Faktem je, že Python je jazyk s vyšší úrovní abstrakce, vyšší například než Java a C++, a umožňuje předat stejné množství informací v menším množství zdrojového kódu.

Python je také univerzální jazyk, takže jej lze použít téměř v jakékoli oblasti vývoje softwaru (samostatné, klient-server, webové aplikace) a v jakékoli oblasti. Kromě toho se Python snadno integruje se stávajícími komponentami, což vám umožňuje vložit Python do již napsaných aplikací.

Další součástí úspěchu Pythonu jsou jeho rozšiřující moduly, standardní i specifické. Standardní rozšiřující moduly Pythonu jsou dobře navržené a časem prověřené funkce pro řešení problémů, které se objevují v každém projektu vývoje softwaru, zpracování řetězců a textů, interakci s operačním systémem a podporu webových aplikací. Tyto moduly jsou také napsány v Pythonu, takže mají svou nejdůležitější vlastnost – multiplatformní, umožňující bezbolestně a rychle přenášet projekty z jednoho operačního systému do druhého.

Pokud požadovaná funkcionalita není ve standardní knihovně Pythonu, můžete si vytvořit vlastní rozšiřující modul pro následné opakované použití. Zde stojí za zmínku, že rozšiřující moduly pro Python lze vytvářet nejen v samotném jazyce Python, ale také pomocí jiných programovacích jazyků. V tomto případě je možné efektivněji implementovat úlohy náročné na zdroje, jako jsou složité vědecké výpočty, ale výhoda multiplatformního přístupu se ztrácí, pokud jazyk rozšiřujícího modulu není sám o sobě multiplatformní, jako je Python.

Runtime Pythonu

Jak víte, všechny multiplatformní programovací jazyky jsou postaveny na stejném modelu: je to skutečně přenosný zdrojový kód a runtime prostředí, které není přenosné a specifické pro každou konkrétní platformu. Toto prováděcí prostředí obvykle obsahuje interpret, který spouští zdrojový kód, a různé utility nezbytné pro údržbu aplikace – debugger, reverzní assembler atd.

Runtime prostředí Java také obsahuje kompilátor, protože zdrojový kód musí být zkompilován do bajtkódu pro virtuální stroj Java. Runtime Pythonu obsahuje pouze interpret, který je také kompilátorem, ale kompiluje zdrojový kód Pythonu přímo do strojového kódu na cílové platformě.

V současné době jsou známy tři implementace runtime pro Python: CPython, Jython a Python.NET. Jak název napovídá, první framework je implementován v C, druhý v Javě a poslední na platformě .NET.

Runtime CPythonu se obvykle nazývá jednoduše Python, a když lidé mluví o Pythonu, mají nejčastěji na mysli tuto implementaci. Tato implementace se skládá z interpretu a rozšiřujících modulů napsaných v jazyce C a lze ji použít na jakékoli platformě, pro kterou je k dispozici standardní kompilátor jazyka C. Kromě toho existují předkompilované verze runtime pro různé operační systémy, včetně různých verzí Windows OS a různé distribuce Linuxu. V tomto a následujících článcích bude CPython zvažován, pokud není samostatně uvedeno jinak.

Jython runtime je implementace Pythonu pro běh Java Virtual Machine (JVM). Je podporována jakákoli verze JVM, počínaje verzí 1.2.2 (aktuální verze Java je 1.6). Práce s Jythonem vyžaduje nainstalovaný Java stroj (běhové prostředí Java) a určitou znalost programovacího jazyka Java. Není nutné umět psát zdrojový kód v Javě, ale budete si muset poradit se soubory JAR a Java applety a také s dokumentací ve formátu JavaDOC.

Kterou verzi prostředí zvolit závisí pouze na preferencích programátora obecně se doporučuje ponechat na počítači CPython i Jython, protože spolu nekolidují, ale doplňují se. Prostředí CPython je rychlejší, protože zde není žádná mezivrstva ve formě JVM; Kromě toho jsou aktualizované verze Pythonu nejprve vydány jako prostředí CPython. Jython však může použít jakoukoli třídu Java jako rozšiřující modul a spustit na jakékoli platformě, pro kterou existuje implementace JVM.

Obě runtime prostředí jsou vydána pod licencí kompatibilní se známou licencí GPL, takže je lze použít pro vývoj komerčního i svobodného softwaru. Většina rozšíření Pythonu je také licencována GPL a lze je volně používat v jakémkoli projektu, existují však i komerční rozšíření nebo rozšíření s přísnějšími licencemi. Proto, když používáte Python v komerčním projektu, musíte vědět, jaká omezení existují v licencích rozšíření plug-in.

Začínáme s Pythonem

Než začnete používat Python, musíte nainstalovat jeho spouštěcí prostředí - v tomto článku je to CPython a tedy interpret pythonu. Existují různé způsoby instalace: zkušení uživatelé si mohou sami zkompilovat Python z jeho veřejně dostupného zdrojového kódu, mohou si také stáhnout hotové spustitelné soubory pro konkrétní operační systém z webu www.python.org a konečně přichází mnoho distribucí Linuxu. s předinstalovaným interpretem Pythonu. Tento článek používá verzi Pythonu 2.x pro Windows, ale uvedené příklady lze spustit na jakékoli verzi Pythonu.

Poté, co instalační program nasadí spustitelné soubory Pythonu do zadaného adresáře, musíte zkontrolovat hodnoty následujících systémových proměnných:

  • CESTA. Tato proměnná musí obsahovat cestu k adresáři, kde je nainstalován Python, aby ji operační systém našel.
  • PYTHONHOME. Tato proměnná by měla obsahovat pouze cestu k adresáři, kde je nainstalován Python. Tento adresář by měl také obsahovat podadresář lib, ve kterém se budou hledat standardní moduly Pythonu.
  • PYTHONPATH. Proměnná se seznamem adresářů obsahujících rozšiřující moduly, které budou připojeny k Pythonu (prvky seznamu musí být odděleny systémovým oddělovačem).
  • STARTUP PYTHON. Volitelná proměnná, která určuje cestu ke skriptu Python, který by měl být spuštěn pokaždé, když je spuštěna relace interaktivního interpretu Pythonu.

Příkazový řádek pro práci s interpretem má následující strukturu.

PYTHONHOME\python (volby) [ příkaz -c | soubor skriptu | - ] (argumenty)

Interaktivní režim Python

Pokud spustíte interpret bez zadání příkazu nebo souboru skriptu, spustí se v interaktivním režimu. V tomto režimu se spustí speciální Python shell, do kterého lze zadávat jednotlivé příkazy nebo výrazy a jejich hodnota se okamžitě vypočítá. To je velmi výhodné při učení Pythonu, protože si můžete okamžitě zkontrolovat správnost konkrétní konstrukce.

Hodnota vyhodnocovaného výrazu je uložena ve speciální proměnné s názvem Single Underscore (_), aby ji bylo možné použít v následujících výrazech. Interaktivní relaci můžete ukončit pomocí klávesové zkratky Ctrl–Z v systému Windows nebo Ctrl–D v systému Linux.

Volby jsou volitelné hodnoty řetězce, které mohou změnit chování tlumočníka během relace; jejich význam bude diskutován v tomto a následujících článcích. Po volbách následuje buď konkrétní příkaz, který má být proveden interpretem, nebo cesta k souboru, který obsahuje skript, který má být proveden. Stojí za zmínku, že příkaz se může skládat z několika výrazů oddělených středníky a musí být uzavřen v uvozovkách, aby jej operační systém mohl správně předat interpretovi. Argumenty jsou ty parametry, které jsou předány k následnému zpracování spustitelnému skriptu; jsou předány programu jako řetězce a odděleny mezerami.

Chcete-li ověřit, zda je Python správně nainstalován a funguje správně, můžete spustit následující příkazy:

c:\>python-v
c:\> python –c “čas importu; print time.asctime()”

Volba -v vypíše používanou verzi implementace Pythonu a ukončí se, zatímco druhý příkaz vypíše na obrazovku hodnotu systémového času.

Skripty Pythonu můžete psát v libovolném textovém editoru, protože se jedná o běžné textové soubory, ale existují také speciální vývojová prostředí navržená pro práci s Pythonem.

Základy syntaxe Pythonu

Skripty zdrojového kódu Pythonu se skládají z tzv logické řetězce, z nichž každá se skládá z fyzické linie. Symbol # se používá k označení komentářů. Interpret ignoruje komentáře a prázdné řádky.

Následující je velmi důležitý aspekt, který se může zdát divný programátorům, kteří se učí Python jako druhý programovací jazyk. Faktem je, že v Pythonu neexistuje žádný symbol, který by byl zodpovědný za vzájemné oddělení výrazů ve zdrojovém kódu, jako je středník (;) v C++ nebo Javě. Středník umožňuje oddělit více instrukcí, pokud jsou na stejném fyzickém řádku. Neexistuje také žádná konstrukce jako složené závorky (), která umožňuje spojit skupinu instrukcí do jednoho bloku.

Fyzické řádky jsou odděleny samotným znakem konce řádku, ale pokud je výraz na jeden řádek příliš dlouhý, lze tyto dva fyzické řádky spojit do jednoho logického řádku. Chcete-li to provést, musíte na konec prvního řádku zadat znak zpětného lomítka (\) a poté interpret interpretuje další řádek jako pokračování prvního řádku, je však nemožné, aby na něm byly další znaky. první řádek za znakem \, například komentář s #. Ke zvýraznění bloků kódu se používá pouze odsazení. Logické řádky se stejnou velikostí odsazení tvoří blok a blok končí, když se objeví logický řádek s menší velikostí odsazení. To je důvod, proč by první řádek skriptu Python neměl být odsazen. Zvládnutí těchto jednoduchých pravidel vám pomůže vyhnout se většině chyb spojených s učením se nového jazyka.

V syntaxi Pythonu nejsou žádné další radikální rozdíly od jiných programovacích jazyků. Existuje standardní sada operátorů a klíčových slov, z nichž většinu již programátoři znají, zatímco těm specifickým pro Python se budeme věnovat v tomto a následujících článcích. Pro specifikaci identifikátorů proměnných, metod a tříd se také používají standardní pravidla - název musí začínat podtržítkem nebo latinkou bez ohledu na velikost a nesmí obsahovat znaky @, $, %. Jako identifikátor také nelze použít pouze jeden znak podtržení (viz poznámka pod čarou, která hovoří o interaktivním režimu provozu).

Datové typy používané v Pythonu

Datové typy používané v Pythonu jsou také stejné jako v jiných jazycích - celočíselné a reálné datové typy; Navíc je podporován komplexní datový typ - s reálnou a imaginární částí (příkladem takového čísla je 1,5J nebo 2j, kde J je druhá odmocnina z -1). Python podporuje řetězce, které lze uzavřít do jednoduchých, dvojitých nebo trojitých uvozovek a řetězce, jako Java, jsou neměnné objekty, tzn. nemohou po vytvoření změnit svou hodnotu.

Python má také logický datový typ bool se dvěma možnostmi hodnot – True a False. Ve starších verzích Pythonu však žádný takový datový typ neexistoval a navíc jakýkoli datový typ mohl být přetypován na booleovskou hodnotu True nebo False. Všechna nenulová čísla a neprázdné řetězce nebo kolekce dat byly považovány za pravdivé a prázdné a nulové hodnoty byly považovány za nepravdivé. Tato vlastnost byla v nových verzích Pythonu zachována, nicméně pro zvýšení čitelnosti kódu se doporučuje pro booleovské proměnné používat typ bool. Zároveň, pokud potřebujete zachovat zpětnou kompatibilitu se staršími implementacemi Pythonu, měli byste jako booleovské proměnné použít 1 (True) nebo 0 (False).

Funkčnost pro práci s datovými sadami

Python definuje tři typy kolekcí pro ukládání datových sad:

  • tuple (tuple);
  • seznam(seznam);
  • slovník.

N-tice je neměnná uspořádaná posloupnost dat. Může obsahovat prvky různých typů, například jiné n-tice. N-tice je definována v závorkách a její prvky jsou odděleny čárkami. Speciální vestavěná funkce tuple() umožňuje vytvářet n-tice z dané sekvence dat.

Seznam je proměnlivá, uspořádaná sekvence prvků. Prvky seznamu jsou také odděleny čárkami, ale jsou uvedeny v hranatých závorkách. Pro vytváření seznamů je navržena funkce list().

Slovník je hashovací tabulka, která ukládá prvek spolu s jeho identifikačním klíčem. Následný přístup k prvkům se také provádí pomocí klíče, takže úložnou jednotkou ve slovníku je pár objekt-klíč a přidružený objekt hodnoty. Slovník je proměnlivá, ale neuspořádaná kolekce, takže pořadí prvků ve slovníku se může v průběhu času měnit. Slovník je uveden ve složených závorkách, klíč je oddělen od hodnoty dvojtečkou a samotné páry klíč/hodnota jsou odděleny čárkami. Pro vytváření slovníků je k dispozici funkce dict().

Výpis 1 ukazuje příklady různých kolekcí dostupných v Pythonu.

Výpis 1. Typy kolekcí dostupných v Pythonu
('w','o','r','l','d') # n-tice pěti prvků (2,62,) # n-tice jednoho prvku [“test”,"me"] # seznam dvou prvků # prázdný seznam ( 5:'a', 6:'b', 7:'c' ) # slovník tří prvků s klíči typu int

Definování funkcí v Pythonu

Ačkoli Python podporuje OOP, mnoho jeho vlastností je implementováno jako samostatné funkce; Navíc jsou rozšiřující moduly nejčastěji vyráběny ve formě knihovny funkcí. Funkce se používají také ve třídách, kde se jim tradičně říká metody.

Syntaxe pro definování funkcí v Pythonu je extrémně jednoduchá; s ohledem na výše uvedené požadavky:

def FUNCTION_NAME(parametry): výraz č. 1 výraz č. 2 ...

Jak vidíte, je nutné použít funkční slovo def, dvojtečka a odsazení. Volání funkce je také velmi jednoduché:

FUNCTION_NAME (parametry)

Je třeba zvážit jen několik věcí specifických pro Python. Stejně jako v Javě jsou primitivní hodnoty předávány hodnotou (funkci je předána kopie parametru a nemůže změnit hodnotu nastavenou před voláním funkce) a komplexní typy objektů jsou předávány odkazem (odkaz je předán funkci a může dobře změnit objekt).

Parametry lze předávat buď jednoduše podle pořadí výpisu nebo podle názvu, v tomto případě nemusíte při volání těch parametrů, pro které existují výchozí hodnoty, specifikovat, ale předávat pouze povinné nebo měnit pořadí parametrů při volání funkce:

#funkce, která provádí celočíselné dělení - pomocí operátoru // def foo(delimoe, delitel): return delimoe // delitel print division(50,5) # výsledek práce: 10 print division(delitel=5, delimoe=50) # výsledek práce: 10

Funkce v Pythonu musí vracet hodnotu – to se provádí buď explicitně pomocí příkazu return následovaného návratovou hodnotou, nebo v případě absence příkazu return vrácením konstanty None, když je dosaženo konce funkce. Jak můžete vidět z příkladů deklarací funkcí, v Pythonu není nutné specifikovat, zda je něco vráceno z funkce nebo ne, ale pokud má funkce jeden příkaz return, který vrací hodnotu, pak ostatní příkazy return v této funkci musí návratové hodnoty, a pokud taková hodnota není, pak musíte explicitně zadat návratovou hodnotu None.

Pokud je funkce velmi jednoduchá a skládá se z jednoho řádku, pak ji lze definovat přímo v místě použití v Pythonu, takové konstrukci se říká lambda funkce; Funkce lambda je anonymní funkce (bez vlastního jména), jejímž tělem je příkaz return, který vrací hodnotu nějakého výrazu. Tento přístup může být v některých situacích pohodlný, ale stojí za zmínku, že opětovné použití takových funkcí je nemožné („tam, kde se zrodily, se hodily“).

Také stojí za to popsat postoj Pythonu k použití rekurze. Ve výchozím nastavení je hloubka rekurze omezena na 1000 úrovní, a když je tato úroveň překonána, vyvolá se výjimka a program se zastaví. V případě potřeby však lze hodnotu tohoto limitu změnit.

Funkce v Pythonu mají další zajímavé funkce, jako je dokumentace a schopnost definovat vnořené funkce, ale ty budou prozkoumány v pozdějších článcích série se složitějšími příklady.




Nahoru