{"id":117649,"date":"2026-05-11T18:01:38","date_gmt":"2026-05-11T12:31:38","guid":{"rendered":"https:\/\/www.mygreatlearning.com\/blog\/?page_id=117649"},"modified":"2026-05-11T18:01:08","modified_gmt":"2026-05-11T12:31:08","slug":"python-program-safe-divider","status":"publish","type":"page","link":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/","title":{"rendered":"Python Program Safe Divider"},"content":{"rendered":"\n<link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/codemirror\/5.65.16\/codemirror.min.css\" \/>\n<link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/codemirror\/5.65.16\/theme\/eclipse.min.css\" \/>\n<link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.4.0\/css\/all.min.css\">\n\n<style>\n    .py-receipt-wrapper {\n        --py-bg-app: #f9fafb;\n        --py-bg-panel: #ffffff;\n        --py-border: #e5e7eb;\n        --py-text-primary: #1f2937;\n        --py-text-secondary: #6b7280;\n        --py-primary-blue: #2563eb;\n        --py-primary-hover: #1d4ed8;\n        --py-header-height: 50px;\n        --py-footer-height: 60px;\n\n        font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif;\n        background-color: var(--py-bg-app);\n        color: var(--py-text-primary);\n        width: 100%;\n        border: 1px solid var(--py-border);\n        box-sizing: border-box;\n        display: flex;\n        flex-direction: column;\n        min-height: 85vh;\n    }\n\n    .py-receipt-wrapper * { box-sizing: border-box; }\n\n    .py-receipt-top-nav {\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        height: var(--py-header-height);\n        padding: 0 20px;\n        background: var(--py-bg-panel);\n        border-bottom: 1px solid var(--py-border);\n        min-width: 100%;\n    }\n    .py-receipt-nav-title { font-weight: 600; color: var(--py-text-secondary); font-size: 14px; }\n\n    .py-receipt-ide-container {\n        display: flex;\n        flex: 1;\n        height: auto;\n        min-width: 100%;\n        background: white;\n        overflow: hidden;\n    }\n\n    .py-receipt-left-pane {\n        width: 45%;\n        border-right: 1px solid var(--py-border);\n        background: var(--py-bg-panel);\n        display: flex;\n        flex-direction: column;\n    }\n\n    .py-receipt-tabs-header {\n        height: var(--py-header-height);\n        border-bottom: 1px solid var(--py-border);\n        display: flex;\n        align-items: center;\n        padding: 0 20px;\n        gap: 25px;\n        font-size: 14px;\n        font-weight: 500;\n        color: var(--py-text-secondary);\n    }\n\n    .py-receipt-tab-item { cursor: pointer; padding: 14px 0; border-bottom: 2px solid transparent; }\n    .py-receipt-tab-item.active { color: var(--py-text-primary); border-bottom-color: var(--py-primary-blue); }\n    .py-receipt-tab-item:hover { color: var(--py-text-primary); }\n\n    .py-receipt-pane-content { flex: 1; overflow-y: auto; padding: 25px; display: none; }\n    .py-receipt-pane-content.active { display: block; }\n\n    .py-receipt-wrapper h1 { margin-top: 0; font-size: 22px; font-weight: 600; color: var(--py-text-primary); margin-bottom: 1rem; }\n    .py-receipt-wrapper p { line-height: 1.6; color: #374151; margin-bottom: 1rem; }\n    .py-receipt-wrapper ul { margin-bottom: 20px; color: #374151; line-height: 1.6; padding-left: 20px; }\n    .py-receipt-wrapper li { margin-bottom: 5px; }\n    .py-receipt-wrapper h3 { font-size: 16px; margin-top: 15px; margin-bottom: 10px; }\n\n    .py-receipt-solution-block {\n        background: #f8f9fa; border: 1px solid var(--py-border); padding: 15px;\n        border-radius: 6px; font-family: 'Consolas', monospace; font-size: 14px;\n        color: #333; white-space: pre-wrap; overflow-x: auto;\n    }\n\n    .py-receipt-sample-box { background-color: #f3f4f6; border: 1px solid var(--py-border); border-radius: 6px; margin-top: 20px; overflow: hidden; }\n    .py-receipt-sample-header { display: flex; background-color: #e5e7eb; font-size: 13px; font-weight: 600; color: var(--py-text-primary); }\n    .py-receipt-sample-col-title { width: 50%; padding: 8px 15px; border-right: 1px solid #d1d5db; }\n    .py-receipt-sample-col-content { width: 50%; padding: 15px; font-family: 'Consolas', monospace; font-size: 14px; border-right: 1px solid var(--py-border); white-space: pre-wrap; color: #333; }\n    .py-receipt-sample-body { display: flex; }\n\n    .py-receipt-right-pane {\n        width: 55%; display: flex; flex-direction: column; background: var(--py-bg-panel);\n    }\n\n    .py-receipt-editor-top-bar {\n        height: var(--py-header-height); border-bottom: 1px solid var(--py-border);\n        display: flex; align-items: center; justify-content: space-between;\n        padding: 0 15px; background-color: #f9fafb;\n    }\n\n    .py-receipt-lang-label { font-weight: 600; font-size: 14px; background: #e5e7eb; padding: 4px 12px; border-radius: 4px; }\n    .py-receipt-editor-settings i { color: var(--py-text-secondary); margin-left: 15px; cursor: pointer; font-size: 16px; }\n\n    .py-receipt-code-area { flex: 1; display: flex; flex-direction: column; position: relative; }\n    .py-receipt-code-area .CodeMirror { flex: 1; height: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; font-family: 'Source Code Pro', monospace; font-size: 15px; }\n\n    .py-receipt-console-section {\n        border-top: 1px solid var(--py-border); background: #f9fafb;\n        display: flex; flex-direction: column; height: 35%;\n    }\n    .py-receipt-console-header { padding: 8px 15px; background: #e5e7eb; font-size: 12px; font-weight: 600; color: var(--py-text-secondary); text-transform: uppercase; }\n    .py-receipt-console-body { display: flex; flex: 1; overflow: hidden; }\n    .py-receipt-input-wrapper, .py-receipt-output-wrapper { flex: 1; display: flex; flex-direction: column; padding: 10px; border-right: 1px solid var(--py-border); }\n    .py-receipt-output-wrapper { border-right: none; }\n    .py-receipt-console-label { font-size: 12px; font-weight: 600; margin-bottom: 5px; color: var(--py-text-secondary); }\n\n    textarea.py-receipt-custom-input-area { flex: 1; border: 1px solid var(--py-border); border-radius: 4px; resize: none; padding: 8px; font-family: monospace; width: 100%; }\n\n    .py-receipt-output-display {\n        flex: 1; background: white; border: 1px solid var(--py-border);\n        border-radius: 4px; padding: 8px; font-family: monospace;\n        white-space: pre-wrap; overflow-y: auto; font-size: 13px;\n        line-height: 1.15;\n    }\n\n    .py-receipt-footer-actions {\n        height: var(--py-footer-height);\n        border-top: 1px solid var(--py-border);\n        display: flex;\n        align-items: center;\n        justify-content: flex-end;\n        padding: 0 20px;\n        background-color: var(--py-bg-panel);\n    }\n\n    .py-receipt-execution-group { display: flex; gap: 12px; align-items: center; }\n\n    .py-receipt-btn {\n        padding: 8px 20px; border-radius: 4px; font-size: 14px; font-weight: 600;\n        cursor: pointer; text-decoration: none; display: inline-flex; align-items: center;\n        justify-content: center; transition: 0.2s; height: 38px; box-shadow: none; border: none;\n    }\n\n    .py-receipt-btn-secondary { background: transparent; border: 1px solid var(--py-border); color: var(--py-text-primary); }\n    .py-receipt-btn-secondary:hover { background: #f3f4f6; }\n    .py-receipt-btn-primary { background: var(--py-primary-blue); border: 1px solid var(--py-primary-blue); color: white; }\n    .py-receipt-btn-primary:hover { background: var(--py-primary-hover); }\n\n    .py-receipt-spinner {\n        display: none; width: 14px; height: 14px;\n        border: 2px solid #fff; border-top-color: transparent;\n        border-radius: 50%; animation: py-receipt-spin 0.8s linear infinite; margin-left: 8px;\n    }\n    @keyframes py-receipt-spin { 100% { transform: rotate(360deg); } }\n\n    .py-receipt-hidden { display: none !important; }\n    .py-receipt-btn-mobile { display: none !important; }\n\n    @media (max-width: 768px) {\n        .py-receipt-wrapper { display: block; height: auto; min-height: auto; }\n        .py-receipt-ide-container { flex: none; height: auto; }\n        .py-receipt-top-nav { display: none; }\n        .py-receipt-ide-container { flex-direction: column; overflow-y: auto; height: auto; }\n        .py-receipt-left-pane, .py-receipt-right-pane { width: 100%; height: auto; }\n        .py-receipt-left-pane { border-right: none; border-bottom: 8px solid #f3f4f6; min-height: auto; max-height: 400px; }\n        .py-receipt-right-pane { display: flex; flex-direction: column; }\n        .py-receipt-console-section, .py-receipt-console-body, .py-receipt-footer-actions { display: contents; }\n        .py-receipt-console-header { display: none; }\n        .py-receipt-editor-top-bar { order: 1; }\n        .py-receipt-code-area { order: 2; height: 500px; flex: none; }\n        .py-receipt-code-area .CodeMirror { position: relative; height: 500px; }\n        .py-receipt-input-wrapper { order: 3; width: 100%; height: auto; min-height: 280px; border-right: none; border-top: 8px solid #f3f4f6; border-bottom: 1px solid var(--py-border); }\n        .py-receipt-execution-group { order: 4; width: 100%; display: flex; padding: 15px; gap: 10px; border-bottom: 1px solid var(--py-border); background: #fff; }\n        .py-receipt-execution-group .py-receipt-btn { flex: 1; }\n        .py-receipt-output-wrapper { order: 5; width: 100%; height: auto; min-height: 300px; max-height: 500px; border-right: none; background: #fff; }\n        .py-receipt-btn-mobile { display: inline-flex !important; order: 6; width: 48%; margin: 15px 1%; box-sizing: border-box; text-align: center; }\n        a.py-receipt-hidden { display: none !important; }\n    }\n<\/style>\n\n<div class=\"py-receipt-wrapper\">\n    <div class=\"py-receipt-top-nav\">\n        <a id=\"py-safe-btn-prev-top\" class=\"py-receipt-btn py-receipt-btn-secondary py-receipt-hidden\" href=\"#\">&larr; Previous<\/a>\n        <span class=\"py-receipt-nav-title\">Module 7: File Handling &amp; Error Handling<\/span>\n        <a id=\"py-safe-btn-next-top\" class=\"py-receipt-btn py-receipt-btn-primary py-receipt-hidden\" href=\"#\">Next &rarr;<\/a>\n    <\/div>\n\n    <div class=\"py-receipt-ide-container\" id=\"py-safe-ideContainer\">\n\n        <div class=\"py-receipt-left-pane\">\n            <div class=\"py-receipt-tabs-header\">\n                <div class=\"py-receipt-tab-item active\" onclick=\"pySafeSwitchTab('statement')\">Statement<\/div>\n                <div class=\"py-receipt-tab-item\" onclick=\"pySafeSwitchTab('solution')\">Solution<\/div>\n            <\/div>\n\n            <div id=\"py-safe-tab-statement\" class=\"py-receipt-pane-content active\">\n                <h1 id=\"python-exercise-7-1-safe-divider\">Python Exercise 7.1: Safe Divider<\/h1>\n                <p>Error handling is a critical skill in Python programming. Write a program that safely divides two numbers by catching potential runtime errors using <code>try\/except<\/code> blocks.<\/p>\n\n                <p>Your program should:<\/p>\n                <ul>\n                    <li>Ask the user to enter two numbers: a <strong>numerator<\/strong> and a <strong>denominator<\/strong>.<\/li>\n                    <li>Use a <code>try\/except<\/code> block to attempt the division.<\/li>\n                    <li>Catch a <code>ZeroDivisionError<\/code> if the denominator is <code>0<\/code> and print an appropriate error message.<\/li>\n                    <li>Catch a <code>ValueError<\/code> if the user enters a non-numeric value and print an appropriate error message.<\/li>\n                    <li>If the division is successful, print the result.<\/li>\n                <\/ul>\n\n                <h3 id=\"sample-interaction-1-success\">Sample Interaction 1 (Success):<\/h3>\n                <div class=\"py-receipt-sample-box\">\n                    <div class=\"py-receipt-sample-header\">\n                        <div class=\"py-receipt-sample-col-title\">Input<\/div>\n                        <div class=\"py-receipt-sample-col-title\">Output<\/div>\n                    <\/div>\n                    <div class=\"py-receipt-sample-body\">\n                        <div class=\"py-receipt-sample-col-content\">10\n2<\/div>\n                        <div class=\"py-receipt-sample-col-content\">Enter numerator: 10\nEnter denominator: 2\nResult: 5.0<\/div>\n                    <\/div>\n                <\/div>\n\n                <h3 id=\"sample-interaction-2-zerodivisionerror\">Sample Interaction 2 (ZeroDivisionError):<\/h3>\n                <div class=\"py-receipt-sample-box\">\n                    <div class=\"py-receipt-sample-header\">\n                        <div class=\"py-receipt-sample-col-title\">Input<\/div>\n                        <div class=\"py-receipt-sample-col-title\">Output<\/div>\n                    <\/div>\n                    <div class=\"py-receipt-sample-body\">\n                        <div class=\"py-receipt-sample-col-content\">10\n0<\/div>\n                        <div class=\"py-receipt-sample-col-content\">Enter numerator: 10\nEnter denominator: 0\nError: Cannot divide by zero.<\/div>\n                    <\/div>\n                <\/div>\n\n                <h3 id=\"sample-interaction-3-valueerror\">Sample Interaction 3 (ValueError):<\/h3>\n                <div class=\"py-receipt-sample-box\">\n                    <div class=\"py-receipt-sample-header\">\n                        <div class=\"py-receipt-sample-col-title\">Input<\/div>\n                        <div class=\"py-receipt-sample-col-title\">Output<\/div>\n                    <\/div>\n                    <div class=\"py-receipt-sample-body\">\n                        <div class=\"py-receipt-sample-col-content\">ten\n2<\/div>\n                        <div class=\"py-receipt-sample-col-content\">Enter numerator: ten\nEnter denominator: 2\nError: Invalid input. Please enter numeric values.<\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n\n            <div id=\"py-safe-tab-solution\" class=\"py-receipt-pane-content\">\n                <h1 id=\"solution\">Solution<\/h1>\n                <p>We wrap the risky operations (conversion and division) inside a <code>try<\/code> block and handle each specific error type in its own <code>except<\/code> clause.<\/p>\n                <div class=\"py-receipt-solution-block\">try:\n    numerator = float(input(\"Enter numerator: \"))\n    denominator = float(input(\"Enter denominator: \"))\n    result = numerator \/ denominator\n    print(f\"Result: {result}\")\nexcept ZeroDivisionError:\n    print(\"Error: Cannot divide by zero.\")\nexcept ValueError:\n    print(\"Error: Invalid input. Please enter numeric values.\")<\/div>\n\n                <p style=\"margin-top:20px\"><strong>Key Concepts:<\/strong><\/p>\n                <ul>\n                    <li><code>try<\/code> block contains code that might raise an exception.<\/li>\n                    <li><code>except ExceptionType<\/code> catches a specific error and runs the handler code.<\/li>\n                    <li><code>ZeroDivisionError<\/code> is raised automatically by Python when dividing by zero.<\/li>\n                    <li><code>ValueError<\/code> is raised when <code>float()<\/code> receives a non-numeric string.<\/li>\n                    <li>You can chain multiple <code>except<\/code> blocks to handle different error types separately.<\/li>\n                <\/ul>\n            <\/div>\n        <\/div>\n\n        <div class=\"py-receipt-right-pane\">\n            <div class=\"py-receipt-editor-top-bar\">\n                <span class=\"py-receipt-lang-label\">Python 3<\/span>\n                <div class=\"py-receipt-editor-settings\">\n                    <i class=\"fas fa-expand\" id=\"py-safe-fullscreenBtn\" title=\"Toggle Fullscreen\"><\/i>\n                <\/div>\n            <\/div>\n\n            <div class=\"py-receipt-code-area\">\n                <div id=\"py-safe-code-editor-div\"><\/div>\n            <\/div>\n\n            <div class=\"py-receipt-console-section\">\n                <div class=\"py-receipt-console-header\">Test Console<\/div>\n                <div class=\"py-receipt-console-body\">\n                    <div class=\"py-receipt-input-wrapper\">\n                        <label class=\"py-receipt-console-label\">Custom Input (Stdin)<\/label>\n                        <textarea id=\"py-safe-custom-input\" class=\"py-receipt-custom-input-area\" placeholder=\"Enter each input on a new line&#10;e.g.&#10;10&#10;2\"><\/textarea>\n                    <\/div>\n                    <div class=\"py-receipt-output-wrapper\">\n                        <label class=\"py-receipt-console-label\">Output<\/label>\n                        <div id=\"py-safe-output-console\" class=\"py-receipt-output-display\">Run code to see output...<\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n\n            <div class=\"py-receipt-footer-actions\">\n                <a id=\"py-safe-btn-prev-mobile\" class=\"py-receipt-btn py-receipt-btn-secondary py-receipt-hidden py-receipt-btn-mobile\" href=\"#\">&larr; Previous<\/a>\n\n                <div class=\"py-receipt-execution-group\">\n                    <button class=\"py-receipt-btn py-receipt-btn-secondary\" onclick=\"pySafeResetCode()\">Reset<\/button>\n                    <button class=\"py-receipt-btn py-receipt-btn-primary\" onclick=\"pySafeRunCode()\">\n                        <span id=\"py-safe-btn-text\">Run Code<\/span>\n                        <span class=\"py-receipt-spinner\" id=\"py-safe-btn-spinner\"><\/span>\n                    <\/button>\n                <\/div>\n\n                <a id=\"py-safe-btn-next-mobile\" class=\"py-receipt-btn py-receipt-btn-primary py-receipt-hidden py-receipt-btn-mobile\" href=\"#\">Next &rarr;<\/a>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/codemirror\/5.65.16\/codemirror.min.js\"><\/script>\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/codemirror\/5.65.16\/mode\/python\/python.min.js\"><\/script>\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/codemirror\/5.65.16\/addon\/edit\/closebrackets.min.js\"><\/script>\n\n<script>\n    var pySafeEditor;\n    var pySafeStarterCode;\n\n    const pySafePrevLink = \"\";\n    const pySafeNextLink = \"\";\n\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const prevBtnTop = document.getElementById('py-safe-btn-prev-top');\n        const nextBtnTop = document.getElementById('py-safe-btn-next-top');\n        const prevBtnMobile = document.getElementById('py-safe-btn-prev-mobile');\n        const nextBtnMobile = document.getElementById('py-safe-btn-next-mobile');\n\n        if (pySafePrevLink && pySafePrevLink.trim() !== \"\") {\n            prevBtnTop.href = pySafePrevLink;\n            prevBtnMobile.href = pySafePrevLink;\n            prevBtnTop.classList.remove('py-receipt-hidden');\n            prevBtnMobile.classList.remove('py-receipt-hidden');\n        }\n\n        if (pySafeNextLink && pySafeNextLink.trim() !== \"\") {\n            nextBtnTop.href = pySafeNextLink;\n            nextBtnMobile.href = pySafeNextLink;\n            nextBtnTop.classList.remove('py-receipt-hidden');\n            nextBtnMobile.classList.remove('py-receipt-hidden');\n        }\n    });\n\n    function pySafeSwitchTab(tabName) {\n        document.querySelectorAll('#py-safe-tab-statement, #py-safe-tab-solution').forEach(el => el.classList.remove('active'));\n        const headerTabs = document.querySelector('#py-safe-ideContainer .py-receipt-tabs-header').children;\n        Array.from(headerTabs).forEach(el => el.classList.remove('active'));\n        document.getElementById('py-safe-tab-' + tabName).classList.add('active');\n        if (tabName === 'statement') headerTabs[0].classList.add('active');\n        if (tabName === 'solution') headerTabs[1].classList.add('active');\n    }\n\n    const pySafeFullscreenBtn = document.getElementById('py-safe-fullscreenBtn');\n    const pySafeIdeContainer = document.getElementById('py-safe-ideContainer');\n\n    if (pySafeFullscreenBtn) {\n        pySafeFullscreenBtn.addEventListener('click', () => {\n            if (!document.fullscreenElement) {\n                pySafeIdeContainer.requestFullscreen().catch(err => alert(`Error: ${err.message}`));\n                pySafeFullscreenBtn.classList.replace('fa-expand', 'fa-compress');\n            } else {\n                document.exitFullscreen();\n                pySafeFullscreenBtn.classList.replace('fa-compress', 'fa-expand');\n            }\n        });\n    }\n\n    pySafeStarterCode = `# Exercise 7.1: Safe Divider\n# Use try\/except to handle division errors\n\n# Wrap your code in a try block\n# try:\n\n    # Get numerator from user\n    # numerator = float(input(\"Enter numerator: \"))\n\n    # Get denominator from user\n    # denominator = float(input(\"Enter denominator: \"))\n\n    # Perform division and print result\n\n\n# Catch ZeroDivisionError\n# except ZeroDivisionError:\n\n\n# Catch ValueError\n# except ValueError:\n\n`;\n\n    pySafeEditor = CodeMirror(document.getElementById(\"py-safe-code-editor-div\"), {\n        value: pySafeStarterCode,\n        mode: \"python\",\n        theme: \"eclipse\",\n        lineNumbers: true,\n        indentUnit: 4,\n        autoCloseBrackets: true\n    });\n\n    function pySafeResetCode() {\n        pySafeEditor.setValue(pySafeStarterCode);\n        document.getElementById(\"py-safe-output-console\").innerText = \"Run code to see output...\";\n    }\n\n    function pySafeRunCode() {\n        const spinner = document.getElementById('py-safe-btn-spinner');\n        const btnText = document.getElementById('py-safe-btn-text');\n        const outputBox = document.getElementById('py-safe-output-console');\n\n        spinner.style.display = \"inline-block\";\n        btnText.innerText = \"Running \";\n        outputBox.innerText = \"Processing...\";\n        outputBox.style.color = \"#6b7280\";\n\n        const pythonCode = pySafeEditor.getValue();\n        const userInput = document.getElementById(\"py-safe-custom-input\").value;\n\n        fetch(\"https:\/\/blogsupport123-python-compiler.hf.space\/api\/run-python\", {\n            method: \"POST\",\n            headers: { \"Content-Type\": \"application\/json\" },\n            body: JSON.stringify({ code: pythonCode, input: userInput }),\n        })\n        .then(response => response.json())\n        .then(data => {\n            if (data.output) {\n                outputBox.innerText = data.output;\n                outputBox.style.color = \"#1f2937\";\n            } else if (data.error || data.errors) {\n                outputBox.innerText = data.error || data.errors;\n                outputBox.style.color = \"#ef4444\";\n            } else {\n                outputBox.innerText = \"No output returned.\";\n            }\n        })\n        .catch(err => {\n            outputBox.innerText = \"Error: \" + err.message;\n            outputBox.style.color = \"#ef4444\";\n        })\n        .finally(() => {\n            spinner.style.display = \"none\";\n            btnText.innerText = \"Run Code\";\n        });\n    }\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>&larr; Previous Module 7: File Handling &amp; Error Handling Next &rarr; Statement Solution Python Exercise 7.1: Safe Divider Error handling is a critical skill in Python programming. Write a program that safely divides two numbers by catching potential runtime errors using try\/except blocks. Your program should: Ask the user to enter two numbers: a numerator [&hellip;]<\/p>\n","protected":false},"author":41,"featured_media":0,"parent":114145,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[25860],"tags":[36796,36895],"class_list":["post-117649","page","type-page","status-publish","hentry","category-software","tag-python","tag-python-exercise"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Python Program Safe Divider - Great Learning Blog: Free Resources what Matters to shape your Career!<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python Program Safe Divider\" \/>\n<meta property=\"og:description\" content=\"&larr; Previous Module 7: File Handling &amp; Error Handling Next &rarr; Statement Solution Python Exercise 7.1: Safe Divider Error handling is a critical skill in Python programming. Write a program that safely divides two numbers by catching potential runtime errors using try\/except blocks. Your program should: Ask the user to enter two numbers: a numerator [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/\" \/>\n<meta property=\"og:site_name\" content=\"Great Learning Blog: Free Resources what Matters to shape your Career!\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/GreatLearningOfficial\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@Great_Learning\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/python-exercise\\\/python-program-safe-divider\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/python-exercise\\\/python-program-safe-divider\\\/\"},\"author\":{\"name\":\"Great Learning Editorial Team\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#\\\/schema\\\/person\\\/6f993d1be4c584a335951e836f2656ad\"},\"headline\":\"Python Program Safe Divider\",\"datePublished\":\"2026-05-11T12:31:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/python-exercise\\\/python-program-safe-divider\\\/\"},\"wordCount\":266,\"publisher\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#organization\"},\"keywords\":[\"python\",\"python-exercise\"],\"articleSection\":[\"IT\\\/Software Development\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/python-exercise\\\/python-program-safe-divider\\\/\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/python-exercise\\\/python-program-safe-divider\\\/\",\"name\":\"Python Program Safe Divider - Great Learning Blog: Free Resources what Matters to shape your Career!\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#website\"},\"datePublished\":\"2026-05-11T12:31:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/python-exercise\\\/python-program-safe-divider\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/python-exercise\\\/python-program-safe-divider\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/python-exercise\\\/python-program-safe-divider\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python Exercises\",\"item\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/python-exercise\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Python Program Safe Divider\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/\",\"name\":\"Great Learning Blog\",\"description\":\"Learn, Upskill &amp; Career Development Guide and Resources\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#organization\"},\"alternateName\":\"Great Learning\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#organization\",\"name\":\"Great Learning\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/GL-Logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/GL-Logo.jpg\",\"width\":900,\"height\":900,\"caption\":\"Great Learning\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/GreatLearningOfficial\\\/\",\"https:\\\/\\\/x.com\\\/Great_Learning\",\"https:\\\/\\\/www.instagram.com\\\/greatlearningofficial\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/school\\\/great-learning\\\/\",\"https:\\\/\\\/in.pinterest.com\\\/greatlearning12\\\/\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/beaconelearning\\\/\"],\"description\":\"Great Learning is a leading global ed-tech company for professional training and higher education. It offers comprehensive, industry-relevant, hands-on learning programs across various business, technology, and interdisciplinary domains driving the digital economy. These programs are developed and offered in collaboration with the world's foremost academic institutions.\",\"email\":\"info@mygreatlearning.com\",\"legalName\":\"Great Learning Education Services Pvt. Ltd\",\"foundingDate\":\"2013-11-29\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"1001\",\"maxValue\":\"5000\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/#\\\/schema\\\/person\\\/6f993d1be4c584a335951e836f2656ad\",\"name\":\"Great Learning Editorial Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/02\\\/unnamed.webp\",\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/02\\\/unnamed.webp\",\"contentUrl\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/02\\\/unnamed.webp\",\"caption\":\"Great Learning Editorial Team\"},\"description\":\"The Great Learning Editorial Staff includes a dynamic team of subject matter experts, instructors, and education professionals who combine their deep industry knowledge with innovative teaching methods. Their mission is to provide learners with the skills and insights needed to excel in their careers, whether through upskilling, reskilling, or transitioning into new fields.\",\"sameAs\":[\"https:\\\/\\\/www.mygreatlearning.com\\\/\",\"https:\\\/\\\/in.linkedin.com\\\/school\\\/great-learning\\\/\",\"https:\\\/\\\/x.com\\\/https:\\\/\\\/twitter.com\\\/Great_Learning\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCObs0kLIrDjX2LLSybqNaEA\"],\"award\":[\"Best EdTech Company of the Year 2024\",\"Education Economictimes Outstanding Education\\\/Edtech Solution Provider of the Year 2024\",\"Leading E-learning Platform 2024\"],\"url\":\"https:\\\/\\\/www.mygreatlearning.com\\\/blog\\\/author\\\/greatlearning\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Python Program Safe Divider - Great Learning Blog: Free Resources what Matters to shape your Career!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/","og_locale":"en_US","og_type":"article","og_title":"Python Program Safe Divider","og_description":"&larr; Previous Module 7: File Handling &amp; Error Handling Next &rarr; Statement Solution Python Exercise 7.1: Safe Divider Error handling is a critical skill in Python programming. Write a program that safely divides two numbers by catching potential runtime errors using try\/except blocks. Your program should: Ask the user to enter two numbers: a numerator [&hellip;]","og_url":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/","og_site_name":"Great Learning Blog: Free Resources what Matters to shape your Career!","article_publisher":"https:\/\/www.facebook.com\/GreatLearningOfficial\/","twitter_card":"summary_large_image","twitter_site":"@Great_Learning","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/#article","isPartOf":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/"},"author":{"name":"Great Learning Editorial Team","@id":"https:\/\/www.mygreatlearning.com\/blog\/#\/schema\/person\/6f993d1be4c584a335951e836f2656ad"},"headline":"Python Program Safe Divider","datePublished":"2026-05-11T12:31:38+00:00","mainEntityOfPage":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/"},"wordCount":266,"publisher":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/#organization"},"keywords":["python","python-exercise"],"articleSection":["IT\/Software Development"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/","url":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/","name":"Python Program Safe Divider - Great Learning Blog: Free Resources what Matters to shape your Career!","isPartOf":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/#website"},"datePublished":"2026-05-11T12:31:38+00:00","breadcrumb":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/python-program-safe-divider\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog","item":"https:\/\/www.mygreatlearning.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Python Exercises","item":"https:\/\/www.mygreatlearning.com\/blog\/python-exercise\/"},{"@type":"ListItem","position":3,"name":"Python Program Safe Divider"}]},{"@type":"WebSite","@id":"https:\/\/www.mygreatlearning.com\/blog\/#website","url":"https:\/\/www.mygreatlearning.com\/blog\/","name":"Great Learning Blog","description":"Learn, Upskill &amp; Career Development Guide and Resources","publisher":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/#organization"},"alternateName":"Great Learning","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.mygreatlearning.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.mygreatlearning.com\/blog\/#organization","name":"Great Learning","url":"https:\/\/www.mygreatlearning.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.mygreatlearning.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/06\/GL-Logo.jpg","contentUrl":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/06\/GL-Logo.jpg","width":900,"height":900,"caption":"Great Learning"},"image":{"@id":"https:\/\/www.mygreatlearning.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/GreatLearningOfficial\/","https:\/\/x.com\/Great_Learning","https:\/\/www.instagram.com\/greatlearningofficial\/","https:\/\/www.linkedin.com\/school\/great-learning\/","https:\/\/in.pinterest.com\/greatlearning12\/","https:\/\/www.youtube.com\/user\/beaconelearning\/"],"description":"Great Learning is a leading global ed-tech company for professional training and higher education. It offers comprehensive, industry-relevant, hands-on learning programs across various business, technology, and interdisciplinary domains driving the digital economy. These programs are developed and offered in collaboration with the world's foremost academic institutions.","email":"info@mygreatlearning.com","legalName":"Great Learning Education Services Pvt. Ltd","foundingDate":"2013-11-29","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"1001","maxValue":"5000"}},{"@type":"Person","@id":"https:\/\/www.mygreatlearning.com\/blog\/#\/schema\/person\/6f993d1be4c584a335951e836f2656ad","name":"Great Learning Editorial Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/02\/unnamed.webp","url":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/02\/unnamed.webp","contentUrl":"https:\/\/www.mygreatlearning.com\/blog\/wp-content\/uploads\/2022\/02\/unnamed.webp","caption":"Great Learning Editorial Team"},"description":"The Great Learning Editorial Staff includes a dynamic team of subject matter experts, instructors, and education professionals who combine their deep industry knowledge with innovative teaching methods. Their mission is to provide learners with the skills and insights needed to excel in their careers, whether through upskilling, reskilling, or transitioning into new fields.","sameAs":["https:\/\/www.mygreatlearning.com\/","https:\/\/in.linkedin.com\/school\/great-learning\/","https:\/\/x.com\/https:\/\/twitter.com\/Great_Learning","https:\/\/www.youtube.com\/channel\/UCObs0kLIrDjX2LLSybqNaEA"],"award":["Best EdTech Company of the Year 2024","Education Economictimes Outstanding Education\/Edtech Solution Provider of the Year 2024","Leading E-learning Platform 2024"],"url":"https:\/\/www.mygreatlearning.com\/blog\/author\/greatlearning\/"}]}},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"web-stories-poster-portrait":false,"web-stories-publisher-logo":false,"web-stories-thumbnail":false},"uagb_author_info":{"display_name":"Great Learning Editorial Team","author_link":"https:\/\/www.mygreatlearning.com\/blog\/author\/greatlearning\/"},"uagb_comment_info":0,"uagb_excerpt":"&larr; Previous Module 7: File Handling &amp; Error Handling Next &rarr; Statement Solution Python Exercise 7.1: Safe Divider Error handling is a critical skill in Python programming. Write a program that safely divides two numbers by catching potential runtime errors using try\/except blocks. Your program should: Ask the user to enter two numbers: a numerator&hellip;","_links":{"self":[{"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/pages\/117649","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/users\/41"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/comments?post=117649"}],"version-history":[{"count":3,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/pages\/117649\/revisions"}],"predecessor-version":[{"id":117651,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/pages\/117649\/revisions\/117651"}],"up":[{"embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/pages\/114145"}],"wp:attachment":[{"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/media?parent=117649"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/categories?post=117649"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mygreatlearning.com\/blog\/wp-json\/wp\/v2\/tags?post=117649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}