Saturday, 23 August 2025

Python Coding challenge - Day 686| What is the output of the following Python Code?

 


Code Explanation:

1. Defining the decorator function
def dec(f):

Here, dec is a decorator function that takes another function f as its argument.

A decorator is a function that modifies the behavior of another function.

2. Defining the wrapper function inside dec
    def wrap(x):
        print("Wrapped!")
        return f(x)

Inside dec, we define another function wrap.

wrap takes one argument x.

It first prints "Wrapped!".

Then it calls the original function f(x) and returns its result.

So this wrap function adds extra behavior (printing) before calling the actual function.

3. Returning the wrapper
    return wrap

Instead of returning the original function, dec returns the modified wrap function.

This means: when dec is used, the original function is replaced by wrap.

4. Decorating function g
@dec
def g(x): return x**2

@dec is shorthand for:

g = dec(g)

So the function g(x) (which normally just does x**2) is wrapped by the decorator.

Now, calling g(x) really means calling wrap(x).

5. Calling g(4)
print(g(4))

Since g was decorated, g(4) calls wrap(4).

Step by step:

"Wrapped!" is printed.

Then the original g(4) → 4**2 = 16 is computed.

That result (16) is returned to print.

Final Output
Wrapped!
16


0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (118) AI (150) Android (25) AngularJS (1) Api (6) Assembly Language (2) aws (27) Azure (8) BI (10) Books (251) Bootcamp (1) C (78) C# (12) C++ (83) Course (84) Coursera (298) Cybersecurity (28) Data Analysis (24) Data Analytics (16) data management (15) Data Science (216) Data Strucures (13) Deep Learning (67) Django (16) Downloads (3) edx (21) Engineering (15) Euron (30) Events (7) Excel (17) Finance (9) flask (3) flutter (1) FPL (17) Generative AI (47) Git (6) Google (47) Hadoop (3) HTML Quiz (1) HTML&CSS (48) IBM (41) IoT (3) IS (25) Java (99) Leet Code (4) Machine Learning (185) Meta (24) MICHIGAN (5) microsoft (9) Nvidia (8) Pandas (11) PHP (20) Projects (32) Python (1215) Python Coding Challenge (882) Python Quiz (341) Python Tips (5) Questions (2) R (72) React (7) Scripting (3) security (4) Selenium Webdriver (4) Software (19) SQL (45) Udemy (17) UX Research (1) web application (11) Web development (7) web scraping (3)

Followers

Python Coding for Kids ( Free Demo for Everyone)