Thursday, 26 June 2025

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

 


Code Explanation:

Function Definition
def f(x, y=[]):
    for i in range(x):
        y.append(i)
    return y
Parameters:
x: How many numbers to append (from 0 to x-1)
y: A list to which numbers will be appended. Default is a mutable list []


Function Calls
Call 1:
print(f(2))
x = 2, y not passed → uses shared default list.
Loop appends 0, 1 → y = [0, 1]
Returns: [0, 1]

Call 2:
print(f(3, []))
x = 3, y = [] → a new list is passed explicitly.
Loop appends 0, 1, 2 → y = [0, 1, 2]
Returns: [0, 1, 2]

This one is isolated from the shared default list.

Call 3:
print(f(2))
x = 2, y not passed → again uses the shared default list, which already contains [0, 1] from Call 1.
Appends 0, 1 again → y = [0, 1, 0, 1]
Returns: [0, 1, 0, 1]

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


Download Book - 500 Days Python Coding Challenges with Explanation

0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (118) AI (152) 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 (217) Data Strucures (13) Deep Learning (68) 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 (186) Meta (24) MICHIGAN (5) microsoft (9) Nvidia (8) Pandas (11) PHP (20) Projects (32) Python (1218) Python Coding Challenge (884) Python Quiz (342) 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)