Monday, 28 July 2025

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

 


Code Explanation:

1. Class Definition
class Repeater:
What it does:
Defines a custom class named Repeater.

2. The __init__ Method
def __init__(self, val, times):
    self.val, self.times = val, times
What it does:
The constructor is called when an object is created.
It stores:
val: the value to repeat
times: how many times to repeat it

Example:
r = Repeater('X', 3)
Now:
self.val = 'X'
self.times = 3

3. The __iter__ Method
def __iter__(self):
    return (self.val for _ in range(self.times))
What it does:
This is the key to making the object iterable.
Instead of writing a full generator function, it returns a generator expression:
(self.val for _ in range(self.times))
That expression yields 'X' exactly 3 times.

4. Creating the Object
r = Repeater('X', 3)
What it does:
Creates an instance of Repeater where:
'X' is the value to repeat
3 is how many times to repeat it

5. Converting to a List
print(list(r))
What it does:
Calls r.__iter__(), which returns a generator.
list(...) consumes the generator and builds a list from it.

Internally equivalent to:
output = []
for item in r:
    output.append(item)
print(output)

Final Output:
['X', 'X', 'X']

0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (118) AI (152) 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 (217) Data Strucures (13) Deep Learning (68) 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 (186) Meta (24) MICHIGAN (5) microsoft (9) Nvidia (8) Pandas (11) PHP (20) Projects (32) Python (1218) Python Coding Challenge (884) Python Quiz (342) 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)