Wednesday, 19 November 2025

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

 


Code Explanation:

1. Class Definition
class Box:

A new class named Box is created.

Objects of this class will store a number and support a custom subtraction operation.

2. Constructor Method (__init__)
    def __init__(self, n):
        self.n = n

The constructor runs whenever a Box object is created.

It takes one parameter n.

self.n = n stores the value in the object's attribute n.

Each Box object will now hold its own number.

3. Operator Overloading (__sub__)
    def __sub__(self, other):
        return Box(self.n * other.n)

This overrides the - (subtraction) operator.

Instead of subtracting, it multiplies the values (self.n * other.n).

It returns a new Box object containing the result.

Example: b1 - b2 is interpreted as b1.__sub__(b2).

4. Creating the First Object
b1 = Box(2)

A new Box object is created with n = 2.

Internally: b1.n = 2.

5. Creating the Second Object
b2 = Box(5)

Another Box object is created with n = 5.

Internally: b2.n = 5.

6. Using the Overloaded - Operator
print((b1 - b2).n)

b1 - b2 calls the overloaded method:
b1.__sub__(b2)

Inside __sub__:
self.n * other.n → 2 * 5 = 10

A new Box object is created with n = 10.

(b1 - b2).n prints 10.

Final Output
10

0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (118) AI (161) Android (25) AngularJS (1) Api (6) Assembly Language (2) aws (27) Azure (8) BI (10) Books (254) 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 (225) Data Strucures (14) Deep Learning (75) Django (16) Downloads (3) edx (21) Engineering (15) Euron (30) Events (7) Excel (17) Finance (9) flask (3) flutter (1) FPL (17) Generative AI (48) 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 (197) Meta (24) MICHIGAN (5) microsoft (9) Nvidia (8) Pandas (12) PHP (20) Projects (32) Python (1219) Python Coding Challenge (898) Python Quiz (348) 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)