Get started learning Python with DataCamp's free Intro to Python tutorial. Learn Data Science by completing interactive coding challenges and watching videos by expert instructors. Start Now!

This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join 11 million other learners and get started learning Python for data science today!

Good news! You can save 25% off your Datacamp annual subscription with the code LEARNPYTHON23ALE25 - Click here to redeem your discount

Dekorátorok


A dekorátorok lehetővé teszik, hogy egyszerű módosításokat hajts végre meghívható objektumokon, mint például a függvényeken, metódusokon vagy osztályokon. Ebben az oktatóanyagban a függvényekkel foglalkozunk. A szintaxis

azonos ezzel:

Ahogy láthattad, a dekorátor egy másik függvény, amely egy függvényt vesz fel és egyet ad vissza. Például ezt teheted:

Ez egy függvényt kétszer futtat.

Képes vagy megváltoztatni a kimenetet is.

változtasd meg a bemenetet

és végezz ellenőrzést.

Tegyük fel, hogy a kimenetet egy változó mennyiséggel szeretnéd szorozni. Meghatározhatod a dekorátort, és így használhatod:

Bármit megtehetsz a régi függvénnyel, akár teljesen figyelmen kívül is hagyhatod! A haladó dekorátorok a doc stringet és az argumentumok számát is manipulálhatják. Néhány érdekes dekorátorért látogass el ide: http://wiki.python.org/moin/PythonDecoratorLibrary.

Exercise

Készíts egy dekorátor gyárat, amely egy dekorátort ad vissza, ami olyan függvényeket dekorál, amelyeknek egy argumentuma van. A gyárnak egy argumentumot kell fogadnia, egy típust, majd egy olyan dekorátort kell visszaadnia, amely gondoskodik arról, hogy a függvény ellenőrizze, hogy a bemenet helyes típusú-e. Ha hibás, nyomtassa ki: "Bad Type" (A valóságban hibát kellene dobnia, de hiba dobásával nem foglalkozik ez az oktatóanyag). Nézd meg az oktatóanyag kódját és várt kimenetét, ha zavart érzel (Én biztosan úgy érezném.) Az isinstance(object, type_of_object) vagy type(object) használata segíthet.

This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join over a million other learners and get started learning Python for data science today!

Previous Tutorial Next Tutorial Take the Test
Copyright © learnpython.org. Read our Terms of Use and Privacy Policy