Code Explanation:
1. class Num:
Defines a class named Num that will hold a numeric value and support operator overloading.
2. def __init__(self, x):
Constructor of the class. It runs when a new Num object is created.
3. self.x = x
Stores the passed value x inside the object.
4. def __truediv__(self, other):
This method overloads the division operator / for objects of class Num.
Instead of performing division, we define a custom operation.
5. return Num(self.x + other.x)
When two Num objects are divided using /,
it returns a new Num object whose value is:
self.x + other.x
6. n1 = Num(8)
Creates a Num object with value 8.
7. n2 = Num(2)
Creates another Num object with value 2.
8. print((n1 / n2).x)
Calls the overloaded / operator
→ executes __truediv__(n1, n2)
Computes: 8 + 2 = 10
Returns Num(10)
Prints its x value → 10
Final Output
10


0 Comments:
Post a Comment