Tuesday, 19 August 2025

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

 


Code Explanation:

Function definition (evaluated once)

def tricky(val, lst=[]): defines a function with a default list.
That default list is created once at definition time and reused on later calls if you don’t pass lst.

Function body (what each call does)

lst.append(val): mutates the list in-place by adding val.

return sum(lst): returns the sum of all numbers currently in lst.

First call: tricky(10)

No lst passed → uses the shared default list (currently []).

After append: lst becomes [10].

sum([10]) → 10.
Result: 10 (and the shared default list now holds [10]).

Second call: tricky(20)

Still no lst passed → uses the same shared list (now [10]).

After append: lst becomes [10, 20].

sum([10, 20]) → 30.
Result: 30 (shared list is now [10, 20]).

Third call: tricky(30, [1])

An explicit list [1] is provided → not the shared default.

After append: list becomes [1, 30].

sum([1, 30]) → 31.
Result: 31 (this separate list is discarded after the call unless stored elsewhere).

Final print

Prints the three return values separated by spaces.

Output:

10 30 31

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)