Funkcie v Pythone: def. Python 3 pre začiatočníkov

V programovacích jazykoch sa táto funkcia nazýva časť kódu. Toto sú samostatné bloky v texte programu. Definované pomocou rezervovaného slova def. V systéme Python môžete získať neobmedzený počet funkcií z akejkoľvek časti skriptu.

Prečo funkcia požadovaná

Funkcie - To je nepostrádateľný nástroj pre programátora. Svojou pomocou programátor rozvíja program, čím je jasnejší a kompaktnejší. Pomocou funkcií môžete dosiahnuť viacnásobné použitie samostatnej časti kódu bez prepisovania.


Toto je najjednoduchší spôsob, ako baliť logiku realizácie jednotlivých častí programu. Tým sa znižuje množstvo a čas, ktorý odborník trávi pri vytváraní skriptu.

Ako napísať prvú funkciu

V Pythone 3 pre začiatočníkov je jeho znalosť programovania najjednoduchšou funkciou print (). Ak chcete vidieť v akcii, budete potrebovať vývojové prostredie. Ak to chcete urobiť, stiahnite si jazykové distribúcie z oficiálnych stránok a nainštalujte Python do počítača. Otvorte ponuku Štart a nájdite Python v zozname aplikácií. 3. Rozbaľte ho ľavým tlačidlom myši. V zozname nájdite prostredie IDLE a spustite ho. Typ tlač ("Ahoj, svet!") A stlač "Enter". Tlmočník vráti výsledok vašej prvej funkcie. Niektorí programátori radšej pracujú v konzole. Ak ste v tomto čísle, kliknite na win + R a zadajte python.exe. Bežný tlmočník sa otvorí iba s rozhraním cmd. Napíšte program, ako je popísané vyššie, a stlačte kláves Enter na koncivýsledok



Ako používať def

Tieto nové funkcie sú vytvorené pomocou ručného def. Oni sú rovnako účinné ako vstavaným print () alebo open (), ale líšia sa vo vlastnostiach kompylyruyuschyh jazykov. Python def sa vzťahuje na spustiteľné pokyny. To znamená, že táto funkcia neexistuje, kým sa interpret ale nevšimol a nepokračujte na jej vykonávanie. Príkaz def vytvorí nový objekt a dáva mu meno. To je, keď interpret začne realizovať, vytvorí nový objekt a jeho prepojenie s rovnakým názvom po def. K ukladaniu údajov do funkcií môžete pripojiť rôzne atribúty. Teraz poďme napísať funkciu, ktorá vráti výraz «Hello, World!», Len za použitia def:
  • def zdravstvuy_myr)
  • print («Hello, World!»)
  • zdravstvuy_myr (() # volanie funkcie
  • Ahoj, svet!
  • syntax funkcií a návrat

    Návod na def v Python má titul a ktoré nasledujúcich pravidiel:
  • def (argumentácie 1 argumentom 2 argumentu N):
  • Po titulná skladba inštrukcie blok, ktorý začína s povinným ústupom. V IDLE, tlmočník to urobí automaticky. Ale v notebooku alebo inom textovom editore môžete zabudnúť na tlačidlo Tab. Potom sa funkcia nespustí. Softvérový kód v bloku inštrukcií sa nazýva funkcie tela a je vykonaný zakaždým, keď sa nazýva. Tiež teleso je niekedy vrátiť:
  • def (argumentácie 1 argumentom 2 argumentu N):
  • návrat
  • Návrat ukončí nástroj a odošle výsledok volajúci program objektu. Pokyn je voliteľný. Funkcia bude fungovať bez návratu a skončí,keď tok kontroly dosiahne koniec svojho tela.

    Parametre a argumenty

    Každá funkcia môže prechádzať parametre, ktoré sú zadané v zátvorkách po def. V Pyteóne sú napísané ako premenné oddelené čiarkami. Hodnoty alebo odkazy na objekty pre tieto mená sú priradené do bloku dvojbodkou. Po vykonaní priradenia sa nazývajú argumenty a nie parametre. Argumenty v rámci funkcie sa nevzťahujú na objekty mimo nej, takže pri programovaní súvisia s lokálnymi premennými. Oblasť viditeľnosti je obmedzená funkčným blokom, ktorý začína def a končí s návratom. Aby to bolo jasnejšie, uvádzame príklad:
  • X = 12 # priradiť celé číslo premenné referenčné objekty,
  • Y = 34
  • def príklad (x, y): # vytvoriť funkcie s nimi , jamy príklad
  • X = «Dobrý deň» # priradenie hodnôt argumentov x, y
  • , y = «Python»
  • pre tlač (x, y, odd = «»)
  • vráti None
  • príklad (x, y) # volanie funkcie, nezabudnite pre vstup do
  • Dobrý deň, Python
  • print (x, y)
  • 1234
  • Poznačte si predposledný krok kódu. V interpretore Python príkaz print () vracia premenné x a y z globálneho rozsahu. Argument hodnota nemusí nutne znamenať v rámci funkcie, môžete ich zadať ručne počas hovoru:
  • def E_2 (x, y):
  • return x + y
  • E_2 («Dobrý deň, »« Python! ») #, že slová bola oddelená, dať priestor pred úvodzovka
  • Dobrý deň, Python!
  • E_2 (5 4)
  • , 10
  • Ako je znázornené na príklade jednoduchého dôsledku funkcie E_2 úplne závisí od typu objektu x a y. V prvom prípade E_2 vykonával spojenie a v druhej bol aritmetickýpridanie operácie. Toto je princíp polymorfizmu a dynamického písania. Skutočnosť, že objekty určujú syntaktický význam, určuje flexibilitu a jednoduchosť jazyka. Nie je potrebné strácať čas špecifikovaním typu údajov, s ktorými funkcia funguje.

    Pravidlo LEGB

    Toto pravidlo platí pre prácu s premennými v rôznych oblastiach viditeľnosti. V predvolenom nastavení sa všetky mená, ktoré vytvoríte vo funkčnom tele, považujú za lokálne. A názvy v module sú globálne. Ak chcete mená, môžete priradiť hodnoty premenných najvyššej úrovne pomocou nelineárnych a globálnych pokynov. Pravidlo LEGB vysvetľuje schému rozlíšenia názvov:
  • Hneď ako tlmočník nájde premennú vo vyhlásení def, najprv vyhľadá hodnoty v lokálnom rozsahu.
  • Ak vyhľadávanie zlyhá, presunie sa do rozsahu všetkých komplexných vyhlásení def.
  • Potom sa tlmočník presunie na globálne názvy v hornej časti modulu a globálne názvy.
  • Ak vyhľadávanie neprinesie výsledky, tlmočník vyhľadá názvy vo vstavanom rozsahu jazyka Python.
  • Pozrime sa na konkrétny príklad:
  • L = 85
  • R = 23
  • návrat C
  • example_2
  • 100
  • Premenné L a R sú na hornej úrovni a sú globálne názvy. R, C a K sú miestne premenné, pretože priradenie hodnôt nastáva vo vnútri výkazu def. Tlmočník vykoná prídavnú operáciu pre miestne R, C a K, pričom ignoruje premennú R mimo vyhlásenie def. Potom hľadajú L, a nie nájsť to medzi mená miestnych,pohybuje sa na vyššiu úroveň.

    Čo je lambda

    Okrem funkcie def môžu byť funkcie Pythonu vytvorené pomocou špeciálnych výrazov, z ktorých jedna je lambda. On dostal svoje pôvodné meno na počesť Lambda-kalkul jazyka LISP. Rovnako ako def, lambda vytvára funkciu, ktorú je možné nazvať v budúcnosti, ale nespája ju s žiadnym menom. V praxi sa lambda používa, keď je potrebné odložiť vykonanie útržku kódu.

    Princípy expresie lambda

    Vo vzhľade, výrazy lambda pripomínajú inštrukcie def. Prvým je kľúčové slovo lambda, potom argumenty, dvojbodka a samotný výraz:
  • f = lambda x, y, z: x + y + z
  • f [234] ] Telo lambda je jediný výraz, nie blok pokynov. Z tohto dôvodu má lambda obmedzené možnosti a nie tak univerzálne ako def. Je možné implementovať len logiku, bez cyklov počas alebo za. Pre lambdu existujú podobné pravidlá pre vyhľadávacie premenné. Názvy uvedené mimo výraz sú globálne, vo vnútri sú lokálne a nemajú žiadny vplyv na seba. Výraz Lambda je veľmi vhodný na vloženie do programu. Vzhľadom na malú veľkosť minimalizujú a zjednodušujú kód. Ale použitie lambdy nie je zásadné. V Pythone 3 budú mať začiatočníci dostatok pokynov na prácu.
  • Súvisiace publikácie