Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Dynamické funkcie v jazyku Python

Python je interpretovaný programovací jazyk , ktorý umožňuje optimalizáciu konštrukcie čase cez použitie dynamických funkcií . Dynamické funkcie umožňujú častí kódu pre generovanie funkcie a následne volať im pri behu . Keď je správne implementovaný , dynamické funkcie zlepšiť čitateľnosť kódu , skrátiť spustiteľný dĺžku a môže dokonca viesť v čase a zlepšenie pamäti počas vykonávania programu . História

Python a iné programovacie jazyky tradične vykonávať statické kód . V tomto spôsobe programovania , programátor píše kód , ktorý je spustený zo strany užívateľov , ale kód nie je a nemôže meniť sám seba , aby sa prispôsobili vstup užívateľa alebo zmenu systémových udalostí . Nový typ kódovania schopnosti , tzv dynamické metódy alebo self - modifikovať kód umožňuje program sám skutočne zmeniť svoju logiku . Dynamické funkcie v Pythone sú príkladom non - trvalé zmeny , to znamená , že programátor vyvíja sadu rámec , ktorý pretrváva staticky v zdrojovom kóde , a neskôr , volanie dynamického funkčného rámca iba dočasne zmeniť na vykonávanie kódu < br . >
Implementácia

Python implementuje dynamické funkcie pomocou kľúčového slova " lambda " , po ktorom nasleduje funkciu logiky definovať rámec a kľúčové slovo " mapa " pre vytvorenie dynamickej funkcii neskôr v kód . Kombinácia týchto kľúčových slov výsledkov kontroly run - time cez ktoré funkcie sú spúšťané a zostavená v pamäti . Na zadnom konci , " lambda " kľúčové slovo prideľuje rámec v pamäti . Ak kľúčové slovo " mapa " spustí , kód vypĺňa v rámci s danými hodnotami , a prideľuje anonymné funkcie v pamäti s daným vstupom .
Optimalizácia

Dynamické funkcie v jazyku Python ponúka obrovské zlepšenie pamäti cez statické funkcie . Definície funkcií ( mínus statický rámec pre funkcie ) môžu byť uložené v súbore alebo premenné , alebo dokonca byť prenášané cez sieť , skôr ako kódu , zvýšenie flexibility . Keď je dynamická funkcia už nie sú potrebné v programe , môže programátor unallocate pamäte používané funkcie , uvoľní cenné systémové prostriedky , ktoré by inak boli hromadia programom .
Komplikácie

Kritici dynamických metód a self - modifikačné kód často vyjadrujú obavy čitateľnosť kódu , straty účinnosti a nepredvídateľné výsledky . Malá časť zo situácií tam , kde sú vhodné dynamické funkcie - tj pri realizácii viac funkcií s podobnou logikou , ktorú možno ľahko odobraté a serializovať . Nesprávna implementácia často za následok chaotický kódu , ktorý vyzerá zložitejšie , než v prípade , že programátor použil statickej funkcie . Vývojári potrebné zvážiť použiteľnosť , potenciálne pamäť zisky alebo straty , a zložitosť kódu pred zavedením dynamických funkcií .

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené