Thursday, 28 August 2025

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

 


Code Explanation:

1) class Meta(type):

Defines a metaclass called Meta.

Since it inherits from type, it means this class is used to control how other classes are created.

Normal classes create objects.

A metaclass creates classes themselves.

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

__new__ is called when a new class (not object) is being created.

Parameters:

cls → the metaclass itself (Meta).

name → name of the class being defined (e.g., "A").

bases → tuple of base classes for inheritance.

dct → dictionary of attributes and methods defined in the class body.

3) dct['id'] = 100

Before the class is created, we inject a new class attribute id into its dictionary.

This means every class using this metaclass will automatically have id = 100.

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

Calls the parent (type.__new__) to actually create the class with the modified dictionary.

Without this, the class A would not be created.

5) class A(metaclass=Meta):

Defines a new class A.

Instead of the default type metaclass, it uses our custom Meta.

When Python sees this, it calls Meta.__new__ to create A.

Inside Meta.__new__, id = 100 is added.

6) print(A.id)

Since the metaclass injected id = 100, class A has a class attribute id.

Prints:

100

Final Output
100

500 Days Python Coding Challenges with Explanation

0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (118) AI (150) Android (25) AngularJS (1) Api (6) Assembly Language (2) aws (27) Azure (8) BI (10) Books (251) Bootcamp (1) C (78) C# (12) C++ (83) Course (84) Coursera (298) Cybersecurity (28) Data Analysis (24) Data Analytics (16) data management (15) Data Science (216) Data Strucures (13) Deep Learning (67) Django (16) Downloads (3) edx (21) Engineering (15) Euron (30) Events (7) Excel (17) Finance (9) flask (3) flutter (1) FPL (17) Generative AI (47) 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 (185) Meta (24) MICHIGAN (5) microsoft (9) Nvidia (8) Pandas (11) PHP (20) Projects (32) Python (1215) Python Coding Challenge (882) Python Quiz (341) 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)