Monday, 25 August 2025

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

 

Code Explanation:

1) Defining a Metaclass
class Meta(type):

Meta is a metaclass because it inherits from type.

Metaclasses are “classes of classes”, i.e., they define how classes themselves are created.

2) Overriding __new__
def __new__(cls, name, bases, dct):

__new__ is called when a class is being created, not an instance.

Parameters:

cls: the metaclass itself (Meta)

name: name of the class being created ("A")

bases: tuple of base classes (() in this case)

dct: dictionary of attributes defined in the class body

3) Modifying the Class Dictionary
dct["id"] = 99
Adds a new attribute id = 99 to the class dictionary before the class is created.

This means any class created with this metaclass will automatically have an id attribute.

4) Calling the Superclass __new__
return super().__new__(cls, name, bases, dct)

Calls type.__new__ to actually create the class object.

Returns the newly created class.

class A(metaclass=Meta):
    pass

5) Creating Class A

A is created using Meta as its metaclass.

During creation:

Meta.__new__ is called

dct["id"] = 99 is injected

A class object is returned

print(A.id)

6) Accessing the Injected Attribute

A.id → 99

The metaclass automatically added id to the class.

Output
99

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)