Tuesday, 22 July 2025

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

 


Code Explanation:

Function Definition
def safe_gen():
This defines a generator function named safe_gen.

It will yield values one at a time using the yield keyword.

Try Block Starts
    try:
Begins a try block to handle exceptions that may occur during the yield statements.

First Yield
        yield 1
The first value 1 is yielded successfully.

The generator pauses here and waits for the next iteration.

Second Yield — Division by Zero
        yield 2 / 0
When execution resumes, it tries to compute 2 / 0, which raises a ZeroDivisionError.

The error is caught by the except block, and this yield never completes.

Third Yield (Skipped)
        yield 3
This line is never executed, because control jumps to the except block once the exception is raised.

Exception Handling
    except ZeroDivisionError:
        yield "Error caught"
This catches the ZeroDivisionError from 2 / 0.

Instead of crashing, it yields the string "Error caught".

Calling and Printing
print(list(safe_gen()))
This runs the generator and collects all yielded values into a list:

First, 1 is yielded.

Then 2 / 0 causes an exception.

Instead of stopping, "Error caught" is yielded from the except block.

yield 3 is skipped due to the error.

Final Output
[1, 'Error caught']

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)