Wednesday, 25 February 2026

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

 


Code Explanation:

๐Ÿ”น 1. Defining Class A
class A:
    x = "A"

Creates a base class A

Defines a class variable x with value "A"

Any subclass can inherit this variable

๐Ÿ”น 2. Defining Class B (Inherits from A)
class B(A):
    pass

B inherits from A

No x is defined in B

So B inherits A.x

๐Ÿ“Œ At this point:

B.x → "A"

๐Ÿ”น 3. Defining Class C (Overrides x)
class C(A):
    x = "C"

C inherits from A

Defines its own class variable x

This overrides A.x inside C

๐Ÿ“Œ Now:

C.x → "C"

๐Ÿ”น 4. Defining Class D (Multiple Inheritance)
class D(B, C):
    pass

D inherits from both B and C

No x is defined in D

Python must decide which parent’s x to use

➡️ This is where MRO (Method Resolution Order) comes into play.

๐Ÿ”น 5. Understanding MRO of Class D

Python calculates MRO using the C3 linearization algorithm.

D.mro()

Result:

[D, B, C, A, object]

๐Ÿ“Œ This means Python looks for attributes in this order:

D

B

C

A

object

๐Ÿ”น 6. Attribute Lookup for D.x
print(D.x)

Step-by-step lookup:

D → ❌ no x

B → ❌ no x (inherits but doesn’t define)

C → ✅ x = "C" found

Stop searching

✅ Final Output
C

0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (119) AI (211) 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 (26) Data Analytics (20) data management (15) Data Science (305) Data Strucures (16) Deep Learning (127) Django (16) Downloads (3) edx (21) Engineering (15) Euron (30) Events (7) Excel (18) Finance (10) flask (3) flutter (1) FPL (17) Generative AI (64) Git (9) Google (50) Hadoop (3) HTML Quiz (1) HTML&CSS (48) IBM (41) IoT (3) IS (25) Java (99) Leet Code (4) Machine Learning (252) Meta (24) MICHIGAN (5) microsoft (9) Nvidia (8) Pandas (13) PHP (20) Projects (32) Python (1258) Python Coding Challenge (1048) Python Mistakes (50) Python Quiz (431) 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)