Friday, 13 February 2026

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

 


Code Explanation

1. Defining the Class
class Tool:


A class named Tool is defined.

2. Defining Method run
    def run(self):
        return "old"


A method named run is created.

If called normally:

Tool().run() → "old"


At this moment:

Tool.run → original method

3. Creating an Object
t = Tool()


An instance t of class Tool is created.

Important:

The object does NOT store the method inside itself.

It looks up methods dynamically from the class.

4. Modifying the Class at Runtime
Tool.run = lambda self: "new"

The class method run is replaced.

Now:

Tool.run → new lambda function


This change affects:

All future objects

All existing objects

Because method lookup happens at call time, not at object creation time.

5. Calling the Method
print(t.run())

Step-by-step:

Python looks for run in t.__dict__ → ❌ not found.

Looks in class Tool.

Finds the new lambda function.

Executes it.

Returns "new".

6. Final Output
new

✅ Final Answer
✔ Output:
new
400 Days Python Coding Challenges with Explanation

0 Comments:

Post a Comment

Popular Posts

Categories

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

Followers

Python Coding for Kids ( Free Demo for Everyone)