Python je univerzálny jazyk vysokej školyúrovni, ktorú je možné rozšíriť a vložiť. Je napríklad zahrnutý v aplikačnej sade ako nástroj na písanie makier. Vďaka tomu je Python inteligentnou voľbou pre mnoho programovacích úloh, malých aj veľkých, a nie je tak dobrý pre malý počet výpočtových úloh.
Kde je najlepšie použiť?
Jazyk Python je ideálny pre projektyvyžaduje rýchly rozvoj. Podporuje niekoľko paradigiem programovania, čo je dobré pre programy, ktoré vyžadujú flexibilitu. A dostupnosť mnohých balíkov a modulov poskytuje všestrannosť a šetrí čas.
Guido van Rossum - láskavý tvorca PythonuVeľkorysý celoživotný diktátor ocenený komunitou. Na konci 80. rokov sa Guidovi páčili vlastnosti niektorých programovacích jazykov, ale žiadny z nich nemal všetky funkcie, ktoré by chcel mať. Jazyk musel mať najmä nasledujúce vlastnosti.
Skriptovací jazyk
Skript je program, ktorýspravuje ďalšie programy. Skriptovacie jazyky sú vhodné na rýchly vývoj a vytváranie prototypov, pretože sa im dobre darí prenášať údaje z jedného komponentu do druhého a ušetria programátora od problémov, ako je správa pamäte.
Komunita používateľov dáva prednosť označovaniu Pythonu ako dynamického programovacieho jazyka.
Odsadenie pre operátorov zoskupenia
Python určuje, ku ktorým výrazom patríjedna skupina pomocou odsadenia. Takáto skupina sa nazýva blok kódu. Ostatné jazyky na to používajú inú syntax alebo interpunkčné znamienka. Napríklad v jazyku C symbol {označuje začiatok a} koniec sekvencie príkazov. Odsadenie sa považuje za dobrú prax aj v iných jazykoch, ale Python bol jedným z prvých, kto presadenie presadil. Čo to robí? Odsadenie uľahčuje čítanie kódu a bloky kódu vyžadujú menej značiek začatia / zastavenia a interpunkčných znamienok, ktoré môžete omylom vynechať. To všetko vedie k menšiemu počtu chýb.
Dátové typy na vysokej úrovni
Počítače ukladajú údaje v jednotkách a nulách, aleľudia potrebujú zložitejšie tvary ako text. Hovorí sa, že jazyk, ktorý podporuje komplexné údaje, podporuje dátové typy na vysokej úrovni. S týmito typmi údajov sa dá ľahko manipulovať. Napríklad v Pythone môžu byť reťazce rozdelené, zreťazené, prevedené na malé alebo veľké písmená, prehľadané atď. Dátové typy na vysokej úrovni, ako sú zoznamy a slovníky, ktoré môžu ukladať ďalšie dáta, majú oveľa viac funkcií ako iné jazyky.
Rozšíriteľnosť
Môže byť rozšíriteľný programovací jazykdoplnené. Takéto jazyky sú veľmi výkonné, pretože vďaka doplnkom sú vhodné pre rôzne použitie a operačné systémy. Rozšírenia môžu pridávať dátové typy alebo koncepty, moduly a doplnky. Jazyk Python je rozšírený niekoľkými spôsobmi. Hlavná skupina programátorov pracuje na jeho zmene a vylepšovaní a stovky ďalších píšu moduly na konkrétne účely.
Výklad
Interpretované jazyky bežiapriamo zo zdrojového kódu napísaného človekom a programy napísané v skompilovaných jazykoch ako C ++ musia byť preložené do strojového kódu. Interpretované jazyky sú pomalšie, pretože sa prekladajú za behu, ale písanie a ladenie programov je rýchlejšie, pretože nie je potrebné čakať na dokončenie kompilátora. Sú ľahšie prenosné na rôznych platformách.
Možno polemizovať o tom, či je to Pythontlmočený alebo zostavený jazyk. Aj keď funguje ako interpretovaný mnohými spôsobmi, jeho kód sa pred vykonaním kompiluje (podobne ako v Jave) a mnoho jeho komponentov beží pri plnej rýchlosti stroja, pretože sú napísané v jazyku C.
Guido začal písať Python počas Vianocprázdnin v roku 1989 a v priebehu budúceho roka jazyk zdokonalil na základe spätnej väzby od svojich kolegov. Široká verejnosť videla výsledok vo februári 1991, keď bol zverejnený v diskusnej skupine Usenet.
Python pre začiatočníkov
Ak chcete začať písať programy v jazyku Python,musíte si ho nainštalovať. Python 2.7 a Python 3.5 majú značné rozdiely, vďaka ktorým sú programy v nich napsané nekompatibilné.
V počítačoch Macintosh tento jazykpredinštalovaný a jeho verzia závisí od veku operačného systému. Ak používate Windows, budete si musieť Python nainštalovať sami. Súbory inštalačného balíka je možné zvoliť na stránke python.org.
Dva spôsoby interakcie
Jedným z dôvodov, prečo je programovanie v Pythone také jednoduché, je to, že obsahuje nástroje, ktoré vám pomôžu navrhovať, písať a ladiť programy.
V interaktívnom režime sa príkazy zadávajú po jednomriadok po čase, podobne ako operačný systém (shell) prijíma príkazy z príkazového riadku. Môžete tiež vytvoriť krátke viacriadkové programy alebo importovať kód z textových súborov alebo vstavaných modulov Pythonu. Pre začiatočníkov bude užitočné vedieť, že online režim obsahuje rozsiahly systém pomoci. Toto je pohodlný spôsob, ako sa naučiť schopnosti programovacieho jazyka.
Vývojové prostredie IDLE obsahuje interaktívnerežim a nástroje na písanie a spúšťanie programov a systém sledovania mien. Prostredie je napísané v jazyku Python a demonštruje rozsiahle možnosti jazyka.
Interaktívny režim
Tu môžete robiť takmer všetko, čo sa dá v programe urobiť, dokonca napísať viacriadkový kód. Tento režim môže slúžiť:
- pieskovisko pre bezpečné experimenty;
- prostredie pre výučbu programovania v Pythone;
- nástroj na hľadanie a opravu chýb.
Upozorňujeme, že to, čo ste zadali, nie je možné uložiť online. Ak to chcete urobiť, musíte napísať kópiu kódu a výsledky do súboru.
Interaktívny režim je možné použiť akokalkulačka, manipulácia s textom a priradenie hodnôt k premenným. Môžete tiež importovať moduly, funkcie alebo časti programov a otestovať ich. Pomáha vám experimentovať s objektmi Pythonu bez písania dlhých programov a ladenia programov tak, že importujete ich časti po jednej.
Interaktívna práca
Po spustení Pythonu sa v okne terminálu zobrazia informácie o aktuálnej verzii programu, dátume jeho vydania, niekoľko výziev na ďalšie akcie a vstupná výzva >>>.
Ak chcete pracovať v interaktívnom režime, zadajte príkaz alebo výraz a stlačte kláves Enter.
Python interpretuje vstup a odpovie, ak zadaný vyžaduje odpoveď, alebo ak jej tlmočník nerozumie.
Nasledujúci príkaz vytlačí riadok. Pretože nie je zadané žiadne umiestnenie tlače, dôjde k výstupu na obrazovku.
- >>> vytlačiť "Hello world!"
- Ahoj Svet!
Tento jediný riadok je celý program! V interaktívnom režime Python po stlačení klávesu Enter spracuje každý riadok zadaného kódu a výsledok sa zobrazí nižšie.
Prezeranie informácií o objekte
V interaktívnom režime existujú dva spôsoby zobrazenia informácií o objekte:
- zadajte objekt (alebo jeho názov) a stlačte kláves Enter;
- zadajte príkaz print a objekt (alebo jeho názov) a stlačte kláves Enter.
Výsledok závisí od objektu.
Pri použití niektorých dátových typov (napríklad celé čísla a zoznamy) poskytujú tieto dve metódy rovnaký výsledok:
- >>> x = [3,2]
- >>> x
- [3, 2]
- >>> tlač x
- [3, 2]
V prípade reťazcov sa výsledok zadania výrazu „print name“ mierne líši od výsledku zadania názvu. V prvom prípade je hodnota uvedená v úvodzovkách, v druhom prípade to však nie je:
- >>> x = "MyString"
- >>> x
- „MyString“
- >>> tlač x
- MyString
Keď názov odkazuje na blok kódu (napríklad inštancia funkcie, modulu alebo triedy), zadanie názvu poskytne informácie o dátovom type, názve a umiestnení úložiska.
Nasledujúci príklad vytvorí triedu s názvom Správa a zobrazí informácie o
Nemecky:
- >>> trieda Správa:
- ... prejsť
- ...
- >>> Správa
- <trieda ___ hlavná ___. Správa na 0x58db0>
- >>> vytlačiť správu
- __hlavný __. Správa
Struny
V Pythone sú reťazce sekvencieznakov. Reťazcový literál sa vytvára uzavretím znakov do jednoduchých ("), dvojitých (") alebo trojitých ("" "alebo" "") úvodzoviek. Tento príklad priraďuje hodnotu premennej x:
- >>> x = "MyString"
Reťazec Python má niekoľko zabudovanýchpríležitosti. Jednou z nich je schopnosť získať svoju kópiu späť so všetkými malými písmenami. Tieto schopnosti sú známe ako metódy. Na volanie metódy na objekte musíte použiť syntax bodky. To znamená, že po zadaní názvu premennej, ktorá je v tomto prípade odkazom na objekt reťazca, musíte vložiť bodkový operátor (.), A potom názov metódy, po ktorej nasleduje otvorenie a zatvorenie zátvorky:
- >>> x.lower ()
- "mystring"
Časť reťazca môžete získať pomocou operátora indexovania s [i]. Indexovanie sa začína na nule, takže s [0] vráti prvý znak v reťazci, s [1] vráti druhý atď.:
- >>> x [0]
- „m“
- >>> x [1]
- „y“
Metódy reťazcov fungujú s bežnými reťazcami aj s reťazcami Unicode. Robia nasledovné:
- zmena malých a veľkých písmen (veľké, veľké, dolné, swapcase, nadpis);
- počítanie (počítať);
- zmena kódovania (kódovanie, dekódovanie);
- hľadať a nahradiť (nájsť, nahradiť, vyhľadať, indexovať, vyhľadať, preložiť);
- skontrolovať splnenie podmienok (začína, končí, isalnum, isalpha, isdigit, islower, isspace, istitle, isupper);
- spojiť a rozdeliť (spojiť, rozdeliť, rozdeliť, rozdeliť, rozdeliť);
- formát (center, ljust, lstrip, rstring, rjust, strip, zfill, expandtabs).
Python: zoznamy
Ak sú reťazce Pythonu obmedzené počtom znakov, potomzoznamy nemajú žiadne obmedzenia. Sú to usporiadané sekvencie ľubovoľných objektov vrátane iných zoznamov. Okrem toho môžete pridávať, odstraňovať a nahrádzať ich položky. Séria objektov oddelených čiarkami v hranatých zátvorkách je zoznamom Python. To, čo je zobrazené, je uvedené nižšie - tu sú príklady údajov a operácií s nimi:
- >>> základy = ["A", "C", "G", "T"]
- >>> základne
- ["A", "C", "G", "T"]
- >>> bases.append ("U")
- >>> základne
- ["A", "C", "G", "T", "U"]
- >>> bases.reverse ()
- >>> základne
- ["U", "T", "G", "C", "A"]
- >>> podstavce [0]
- „U“
- >>> podstavce [1]
- „T“
- >>> bases.remove ("U")
- >>> základne
- ["T", "G", "C", "A"]
- >>> bases.sort ()
- >>> základne
- ["A", "C", "G", "T"]
V tomto príklade zoznam jednotlivcovznakov. Potom bol na koniec pridaný prvok, poradie prvkov bolo obrátené, prvky boli načítané podľa ich indexovej polohy, prvok s hodnotou „U“ bol odstránený a prvky boli zoradené. Odstránenie položky zo zoznamu ilustruje situáciu, keď metóda remove () musí poskytnúť ďalšie informácie, konkrétne hodnotu, ktorú je potrebné odstrániť.
Okrem metód ako remove (), Pythonmá ďalšiu podobnú funkciu nazývanú funkcia. Jediný rozdiel medzi funkciou a metódou je v tom, že prvý z nich nie je spojený s konkrétnym objektom.
Python: funkcie
Funkcie vykonávajú akcie s jednou alebo viacerými hodnotami a vracajú výsledok. Veľké množstvo z nich je zabudovaných do Pythonu. Príklady zabudovaných funkcií:
- len () - vráti počet prvkov v poradí;
- dir () - vráti zoznam reťazcov predstavujúcich atribúty objektu;
- list () - Vráti nový zoznam inicializovaný z inej postupnosti.
- >>> pomoc (okrúhle)
- Pomoc so zabudovanými funkčnými kruhmi:
- okrúhly (...)
- zaokrúhlenie (číslo [, číslice]) -> číslo s pohyblivou rádovou čiarkou
Je tiež možné definovať svoje vlastné funkcie.
Užívateľom definované funkcie
Proces vytvorenia vlastnej funkcie Pythonu je nasledovný.Prvý riadok začína kľúčovým slovom def, za ktorým nasleduje názov funkcie a argumenty (očakávané vstupy), ktoré sú uzavreté v zátvorkách a končí dvojbodkou. Následné príkazy tvoria telo funkcie a musia byť odsadené. Ak je komentár na začiatku funkčného orgánu, stane sa súčasťou jeho dokumentácie. Posledný riadok funkcie vráti výsledok:
- >>> def prepis (dna):
- ... "" "Vrátiť reťazec dna ako reťazec rna." ""
- ... vrátiť dna.replace ("T", "U")
- ...
- >>> prepis („CCGGAAGAGCTTACTTAG“)
- „CCGGAAGAGCUUACUUAG“
V tomto príklade bola vytvorená funkcia s názvomtranskribovať, ktorý očakáva reťazec predstavujúci sekvenciu DNA. Metóda replace () vráti kópiu pôvodného reťazca a nahradí všetky výskyty jedného znaku druhým. Tri riadky kódu umožnili prepis DNA na RNA. Funkcia spätného chodu vyzerá takto:
- >>> def reverse (s):
- ... "" "Vrátiť reťazec sekvencií v opačnom poradí." ""
- ... písmená = zoznamy
- ... letters.reverse ()
- ... vrátiť "" .pripojiť (písmená)
- ...
- >>> vzad („CCGGAAGAGCTTACTTAG“)
- „GATTCATTCGAGAAGGCC“
Reverzná funkcia vezme reťazec, vytvorí zoznam,na jeho základe a mení svoje poradie. Teraz musíme urobiť reverznú transformáciu. Objekt má metódu join (), ktorá spojí zoznam oddelením každého z jeho prvkov reťazcovou hodnotou. Pretože nie je potrebný oddeľovač, metóda sa používa na prázdny reťazec, ktorý je reprezentovaný dvoma úvodzovkami („“ alebo „“).
Slovníky
A čo je to pythonovský slovník?Má rovnaké výhody ako bežný papierový slovník. Umožňuje rýchlo nájsť požadovanú hodnotu (definíciu) spojenú s kľúčom (slovom). Slovníky sú uzavreté do zložených zátvoriek a obsahujú sekciu párov kľúč - hodnota oddelenú čiarkami. Slovníky nie sú zoradené. Namiesto toho sa k významom slovníka pristupuje prostredníctvom ich kľúča, nie podľa ich polohy.
- >>> basecomplement = {"A": "T", "C": "G", "T": "A", "G": "C"}
- >>> basecomplement.keys ()
- ["A", "C", "T", "G"]
- >>> basecomplement.values ()
- ["T", "G", "A", "C"]
- >>> základný doplnok ["A"]
- „T“
vyučovanie
Aby ste si vytvorili svoj vlastnýobjekty, musíte definovať druh šablóny nazývanej trieda. V Pythone sa to deje pomocou príkazu triedy, za ktorým nasleduje meno a dvojbodka. Telo definície triedy obsahuje vlastnosti a metódy, ktoré budú k dispozícii pre všetky inštancie objektov založené na tejto triede.
výhody
Väčšina programovacích jazykov ponúkapohodlné funkcie, ale žiadna z nich nemá kombináciu pohodlia a sily, ktorú Python ponúka. Aké sú tieto výhody? Tu sú niektoré z nich:
- Jazyk je možné vložiť do iných aplikácií a použiť ho na vytváranie makier. Napríklad v Paint Shop Pro 8 a novších je to skriptovací jazyk.
- Python je voľne použiteľný a komerčne distribuovateľný.
- Jazyk má silné schopnosti na spracovanie a vyhľadávanie textu, čo sa používa v aplikáciách, ktoré pracujú s veľkým množstvom textových informácií.
- Na ňom môžete vytvárať veľké aplikácie bez potreby kontroly spustených programov.
- Python podporuje testovanie a ladenie jednotlivých modulov a celých programov.