Friday, 1 August 2025

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

 


Code Explanation:

 1. Define the Generator Function
def counter():
    i = 0
    while True:
        i = (yield i) or i + 1
What it does:
i = 0: Initializes the counter.
while True: Infinite loop for continuous counting.
yield i: Pauses and outputs the current value of i.
i = (yield i) or i + 1: After yielding, waits for send() input.
If something is sent (e.g., send(10)), i becomes that value.
If None is sent (like when using next()), it just does i + 1.
This is a generator that can accept values using .send()!

2. Create the Generator
c = counter()
Instantiates the generator.
Important: Generator doesn't run until you call next() or send(None).

 3. First next(c)
print(next(c))
What it does:
Starts the generator. Execution begins at i = 0.
Goes to yield i and yields 0.
Pauses at the yield, waiting for next input.

Output: 0

4. Send a New Value to the Generator
print(c.send(10))

What it does:
Resumes from the yield line.
send(10) assigns 10 to (yield i), so:
i = 10
Then loop continues → yield i → yields 10.
Output: 10

5. Next Increment (No send — just next())
print(next(c))
What it does:
Resumes again.
Since no value is sent, yield i receives None.
So:
i = None or i + 1
That becomes i = i + 1 = 11.
Output: 11

Final Output:
0
10
11

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)