Challenge: Flexible Type Validation Decorator
Swipe to start coding
Create a flexible decorator for validating data types:
-
Define the validate decorator, which should take data types (
str,int,bool, etc.) as arguments and annotate them using thetypekeyword. -
Define the
innerfunction that takes a function (func) as an argument. -
Define the
wrapperfunction that takes*args. -
Check if each argument is an instance of one of the specified
types. -
Functions should return:
- The
wrapper()should return the result offunc()with the provided arguments. - The
inner()should returnwrapperwithout calling it. - The
validate()should returninner()without calling it.
-
Validate the
snake_string()function for thestrdata type using the@validatedecorator. -
Validate the
multiply()function for theintorfloatdata types using the@validatedecorator.
Solution
Thanks for your feedback!
single
Ask AI
Ask AI
Ask anything or try one of the suggested questions to begin our chat
Summarize this chapter
Explain the code in file
Explain why file doesn't solve the task
Awesome!
Completion rate improved to 6.67
Challenge: Flexible Type Validation Decorator
Swipe to show menu
Swipe to start coding
Create a flexible decorator for validating data types:
-
Define the validate decorator, which should take data types (
str,int,bool, etc.) as arguments and annotate them using thetypekeyword. -
Define the
innerfunction that takes a function (func) as an argument. -
Define the
wrapperfunction that takes*args. -
Check if each argument is an instance of one of the specified
types. -
Functions should return:
- The
wrapper()should return the result offunc()with the provided arguments. - The
inner()should returnwrapperwithout calling it. - The
validate()should returninner()without calling it.
-
Validate the
snake_string()function for thestrdata type using the@validatedecorator. -
Validate the
multiply()function for theintorfloatdata types using the@validatedecorator.
Solution
Thanks for your feedback!
single