Monday, 5 January 2026

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

 


Code Explanation:

1. Defining the Outer Function
def outer():

A function named outer is defined.

It will create and return another function.

2. Creating a Mutable Variable
    x = []

A list named x is created inside outer.

This list will be shared by the inner function through a closure.

3. Defining the Inner Function
    def inner():
        x.append(len(x))
        return x

inner is defined inside outer, so it captures x from the outer scope.

Every call to inner:

Computes len(x) (current length of the list),

Appends that value to x,

Returns the updated list.

4. Returning the Inner Function
    return inner

outer returns the inner function.

The returned function still has access to the list x because of the closure.

5. Creating the Closure
f = outer()

outer() is called once.

A new list x = [] is created.

inner is returned and assigned to f.

f now remembers and shares the same x across all calls.

6. Calling the Function Multiple Times
print(f(), f(), f())

Let’s evaluate each call:

▶ First f():

x = []

len(x) = 0, append 0 → x = [0]

Returns [0]

▶ Second f():

x = [0]

len(x) = 1, append 1 → x = [0, 1]

Returns [0, 1]

▶ Third f():

x = [0, 1]

len(x) = 2, append 2 → x = [0, 1, 2]

Returns [0, 1, 2]

7. Final Output
[0] [0, 1] [0, 1, 2]

Final Answer
✔ Output:
[0] [0, 1] [0, 1, 2]

800 Days Python Coding Challenges with Explanation

0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (118) AI (175) Android (25) AngularJS (1) Api (7) Assembly Language (2) aws (27) Azure (8) BI (10) Books (261) Bootcamp (1) C (78) C# (12) C++ (83) Course (84) Coursera (299) Cybersecurity (28) Data Analysis (24) Data Analytics (16) data management (15) Data Science (236) Data Strucures (15) Deep Learning (94) Django (16) Downloads (3) edx (21) Engineering (15) Euron (30) Events (7) Excel (18) Finance (9) flask (3) flutter (1) FPL (17) Generative AI (51) Git (8) Google (47) Hadoop (3) HTML Quiz (1) HTML&CSS (48) IBM (41) IoT (3) IS (25) Java (99) Leet Code (4) Machine Learning (213) Meta (24) MICHIGAN (5) microsoft (9) Nvidia (8) Pandas (12) PHP (20) Projects (32) Python (1236) Python Coding Challenge (948) Python Mistakes (22) Python Quiz (388) Python Tips (5) Questions (3) 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)