From e322b9a990ee7cb6ac96d45c853c49900a16bba4 Mon Sep 17 00:00:00 2001 From: Anna Meyer <annapmeyer95@gmail.com> Date: Fri, 21 Jul 2023 09:29:01 -0500 Subject: [PATCH] lec 15 --- .../15_Errors/lec-15-worksheet.pdf | Bin 0 -> 76578 bytes .../lec_15_error_handling_template.ipynb | 805 ++++++++++++++++++ 2 files changed, 805 insertions(+) create mode 100644 sum23/lecture_materials/15_Errors/lec-15-worksheet.pdf create mode 100644 sum23/lecture_materials/15_Errors/lec_15_error_handling_template.ipynb diff --git a/sum23/lecture_materials/15_Errors/lec-15-worksheet.pdf b/sum23/lecture_materials/15_Errors/lec-15-worksheet.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0a57c1e39f3c8a5e4c3074944ebe86dec09b02b8 GIT binary patch literal 76578 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 literal 0 HcmV?d00001 diff --git a/sum23/lecture_materials/15_Errors/lec_15_error_handling_template.ipynb b/sum23/lecture_materials/15_Errors/lec_15_error_handling_template.ipynb new file mode 100644 index 0000000..17918b5 --- /dev/null +++ b/sum23/lecture_materials/15_Errors/lec_15_error_handling_template.ipynb @@ -0,0 +1,805 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Error handling" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# import statements\n", + "import math" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Warmup\n", + "\n", + "### Warmup 1: How does this recursion work? Try it in Python tutor" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def chop(s):\n", + " if len(s) < 3:\n", + " return s[0]\n", + " else:\n", + " return s[1] + chop(s[2:])\n", + "\n", + "chop(\"abcdefghijklmnop\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Now, by hand, figure out this output\n", + "chop(\"987654\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Lecture 25: Error Handling\n", + "\n", + "**Learing Objectives:**\n", + " \n", + "- Explain the purpose of assert statements, try/except blocks, and raise statements.\n", + "\n", + "- Use an assert statement to force a program to crash, and trace code that uses assert.\n", + "\n", + "- Use try/except blocks to catch runtime errors and deal with them\n", + " - by specifying the exception(s) caught\n", + " - by using the exception object\n", + "\n", + "- Use the raise statement to raise an exception that may be caught in another part of the program\n", + "\n", + "- Hand trace code that uses assert, try/except blocks and raise statements\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Why might you want your code to crash more?\n", + "\n", + "- It is easier to debug the program if we get a stack trace\n", + "- Semantic errors are the scariest because we don't get any kind of error\n", + "\n", + "### When is it fine for your code to crash less?\n", + "\n", + "- When user enters incorrect input, we simply want to display an error message and not crash\n", + "- When the program has syntax error, we definitely want the program to crash\n", + "\n", + "<div>\n", + "<img src=\"attachment:Theme.png\" width=\"600\"/>\n", + "</div>" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Pizza Analyzer" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def pizza_size(radius):\n", + " return (radius ** 2) * math.pi\n", + "\n", + "def slice_size(radius, slice_count):\n", + " total_size = pizza_size(radius)\n", + " return total_size * (1 / slice_count)\n", + "\n", + "def main():\n", + " for i in range(3):\n", + " # grab input\n", + " args = input(\"Enter pizza diameter(inches), slice count: \")\n", + " args = args.split(',')\n", + " radius = float(args[0].strip()) / 2\n", + " slices = int(args[1].strip())\n", + "\n", + " # pizza analysis\n", + " size = slice_size(radius, slices)\n", + " print('PIZZA: radius = {}, slices = {}, slice square inches = {}'\n", + " .format(radius, slices, size))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Try valid input of 4, 4 for main invocation" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "main()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Can you think of any inputs that will make this program crash?\n", + "\n", + "Try each of these bad inputs:\n", + "- 10, 0: ZeroDivisionError\n", + "- 10: IndexError\n", + "- 10, hello: ValueError\n", + "- 10, 4.5: ValueError\n", + "- 10, -4: Semantic error\n", + "- -10, 4: Semantic error (scariest error for this example)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "main()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### What was the scariest error in the above examples?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# - -10, 4: Semantic error (scariest error for this example)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## `assert` statements\n", + "- `assert` statements enable you to convert semantic errors into runtime errors\n", + " - runtime errors are easier to debug than semantic errors\n", + "- `assert` statements make your program very slow!\n", + " - so sometimes programmers disable these (we won't be learning about this)\n", + "- Syntax: `assert BOOLEAN_EXPRESSION`\n", + " - BOOLEAN_EXPRESSION evaluates to `True`: nothing happens (move on to next line of code)\n", + " - BOOLEAN_EXPRESSION evaluates to `False`: program carshes with `AssertionError`\n", + " \n", + "<div>\n", + "<img src=\"attachment:Assert.png\" width=\"450\"/>\n", + "</div>" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# simple example\n", + "\n", + "age = int(input(\"Enter your age: \"))\n", + "assert age >= 0 # if True, do nothing else, crash\n", + "print(\"In five years you will be\", age + 5, \"years old\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "<div>\n", + "<img src=\"attachment:assert.png\" width=\"600\"/>\n", + "</div>" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Let's improvise error handling in pizza analyzer\n", + "- using `assert`:\n", + " - `assert` that radius is positive\n", + " - `assert` that slice count is positive" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Copy pasted code (not a typical thing which I will ask you to do) \n", + "# change function definitions to v2 and add the assert statements\n", + "\n", + "def pizza_size_v2(radius):\n", + " # TODO add assert statement here\n", + " return (radius ** 2) * math.pi\n", + "\n", + "def slice_size_v2(radius, slice_count):\n", + " # TODO add assert statement here\n", + " total_size = pizza_size(radius)\n", + " return total_size * (1 / slice_count)\n", + "\n", + "def main_v2():\n", + " for i in range(3):\n", + " # grab input\n", + " args = input(\"Enter pizza diameter(inches), slice count: \")\n", + " args = args.split(',')\n", + " radius = float(args[0].strip()) / 2\n", + " slices = int(args[1].strip())\n", + "\n", + " # pizza analysis\n", + " size = slice_size(radius, slices)\n", + " print('PIZZA: radius = {}, slices = {}, slice square inches = {}'\n", + " .format(radius, slices, size))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Try these problematic inputs for the main() function invocation\n", + "\n", + "- 10, -4: Semantic error\n", + "- -10, 4: Semantic error (scariest error for this example)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "main_v2()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## What if we want to keep running even if there is an error?\n", + "\n", + "That is, we don't want to pause the program execution for user's incorrect input" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## try / except blocks\n", + "\n", + "- `try` and `except` blocks come in pairs (runtime errors are “exceptions”)\n", + "- Python tries to run the code in the `try` block. \n", + " - If there is an exception, `try` block execution terminates and then `except` block gets executed(instead of crashing). This is called “catching” the exception.\n", + " - If there is no exception, `except` block doesn't get executed.\n", + "- Syntax (example):\n", + "```python\n", + "try:\n", + " flaky_function()\n", + "except:\n", + " print(\"error!\") # or some other handling\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### try / except examples\n", + "Try these examples using PythonTutor" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Example 1: v1" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " print(\"2 inverse is\", 1/2)\n", + " print(\"1 inverse is\", 1/1)\n", + " print(\"0 inverse is\", 1/0)\n", + " print(\"-1 inverse is\", -1/1)\n", + " print(\"-2 inverse is\", -1/1)\n", + "except:\n", + " print(\"that's all, folks!\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Example 1: v2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " print(\"2 inverse is\", 1/2)\n", + " print(\"1 inverse is\", 1/1)\n", + " print(\"0 inverse is\", 1/0)\n", + "except:\n", + " print(\"that's all, folks!\")\n", + "\n", + "try:\n", + " print(\"-1 inverse is\", -1/1)\n", + " print(\"-2 inverse is\", -1/1)\n", + "except:\n", + " print(\"This will never get executed!\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Example 2: v1\n", + "- hierarchy of catching exceptions" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def buggy():\n", + " print(\"buggy: about to fail\")\n", + " print(\"buggy: infinity is \", 1/0)\n", + " print(\"buggy: oops!\") # never prints\n", + "\n", + "def g():\n", + " print(\"g: before buggy\")\n", + " buggy()\n", + " print(\"g: after buggy\") # never prints\n", + "\n", + "def f():\n", + " try:\n", + " print(\"f: let's call g\")\n", + " g()\n", + " print(\"f: g returned normally\") # never prints\n", + " except:\n", + " print(\"f: that didn't go so well\")\n", + "\n", + "f()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Example 2: v2\n", + "- hierarchy of catching exceptions" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def buggy():\n", + " print(\"buggy: about to fail\")\n", + " print(\"buggy: infinity is \", 1/0)\n", + " print(\"buggy: oops!\") # never prints\n", + "\n", + "def g():\n", + " print(\"g: before buggy\")\n", + " try:\n", + " buggy()\n", + " except:\n", + " print(\"g: that didn't go well\")\n", + " print(\"g: after buggy\") \n", + "\n", + "def f():\n", + " try:\n", + " print(\"f: let's call g\")\n", + " g()\n", + " print(\"f: g returned normally\") \n", + " except:\n", + " print(\"f: that didn't go so well\") # never prints\n", + "\n", + "f()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Example 2: v3\n", + "- hierarchy of catching exceptions" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def buggy():\n", + " try:\n", + " print(\"buggy: about to fail\")\n", + " print(\"buggy: infinity is \", 1/0)\n", + " except:\n", + " print(\"buggy: oops!\") \n", + "\n", + "def g():\n", + " print(\"g: before buggy\")\n", + " try:\n", + " buggy()\n", + " except:\n", + " print(\"g: that didn't go well\") # never prints\n", + " print(\"g: after buggy\")\n", + "\n", + "def f():\n", + " try:\n", + " print(\"f: let's call g\")\n", + " g()\n", + " print(\"f: g returned normally\") \n", + " except:\n", + " print(\"f: that didn't go so well\") # never prints\n", + "\n", + "f()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### What if we want to know the reason for the exception?\n", + "\n", + "- Syntax (example):\n", + "```python\n", + "try:\n", + " flaky_function()\n", + "except Exception as e:\n", + " print(\"error because:\", str(e))\n", + " print(\"type of exception:\", type(e))\n", + "```\n", + "- `Exception` is a type.\n", + "- e an object instance of of type `Exception` (very general)\n", + " - there are different types of exceptions\n", + "- `str(e)` gives you the reason for the exception.\n", + "- `type(e)` will give you the type of the exception." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Let's improvise error handling in pizza analyzer more\n", + "- using `try` ... `except` ... " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def main_v3():\n", + " for i in range(3):\n", + " # grab input\n", + " args = input(\"Enter pizza diameter(inches), slice count: \")\n", + " args = args.split(',')\n", + " radius = float(args[0].strip()) / 2\n", + " slices = int(args[1].strip())\n", + "\n", + " # pizza analysis TODO add try/except here\n", + " size = slice_size_v2(radius, slices)\n", + " print('PIZZA: radius = {}, slices = {}, slice square inches = {}'\n", + " .format(radius, slices, size))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Try these problematic inputs for the main() function invocation\n", + "\n", + "- 10, 0: ZeroDivisionError\n", + "- 10: IndexError\n", + "- 10, hello: ValueError\n", + "- 10, 4.5: ValueError\n", + "- 10, -4: AssertionError (after we wrote assert statement)\n", + "- -10, 4: AssertionError (after we wrote assert statement)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "main_v3()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### `Exception` is too broad\n", + "- it catches many types of exceptions\n", + "- you do not want your except block to catch every possible exception!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Let's create an intentional SyntaxError\n", + "\n", + "def main_v4():\n", + " for i in range(5):\n", + " try:\n", + " # grab input\n", + " args = input(\"Enter pizza diameter(inches), slice count: \")\n", + " args = args.split(',')\n", + " radius = float(args[0].strip()) / 2\n", + " slices = int(args[1].strip())\n", + " except Exception as e:\n", + " print(\"Bad input & reason is:\", str(e))\n", + " print(\"Type of exception:\", type(e))\n", + " \n", + " try:\n", + " # pizza analysis\n", + " size = slice_size_v2(radius, slices)\n", + " print('PIZZA: radius = {}, slices = {}, slice square inches = {}'\n", + " .format(radius, slices, size))\n", + " except Exception as e:\n", + " print(\"Pizza analysis error & reason is:\", str(e))\n", + " print(\"Type of exception:\", type(e))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "main_v4() # oops, we made our program way too robus!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### How can we make `except` block catch specific exceptions?\n", + "\n", + "- Syntax (example):\n", + "```python\n", + "try:\n", + " flaky_function()\n", + "except (ValueError, IndexError) as e:\n", + " print(\"error because:\", str(e))\n", + " print(\"type of exception:\", type(e))\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Let's fix our except blocks\n", + "# Try introducing the intentional SyntaxError now\n", + "\n", + "def main_v5():\n", + " for i in range(5):\n", + " try:\n", + " # grab input\n", + " args = input(\"Enter pizza diameter(inches), slice count: \")\n", + " args = args.split(',')\n", + " radius = float(args[0].strip()) / 2\n", + " slices = int(args[1].strip())\n", + " except Exception as e:\n", + " print(\"Bad input & reason is:\", str(e))\n", + " print(\"Type of exception:\", type(e))\n", + " continue\n", + " \n", + " try:\n", + " # pizza analysis\n", + " size = slice_size_v2(radius, slices)\n", + " print('PIZZA: radius = {}, slices = {}, slice square inches = {}'\n", + " .format(radius, slices, size))\n", + " except Exception as e:\n", + " print(\"Pizza analysis error & reason is:\", str(e))\n", + " print(\"Type of exception:\", type(e))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Try these problematic inputs for the main() function invocation\n", + "\n", + "- 10, 0: ZeroDivisionError\n", + "- 10: IndexError\n", + "- 10, hello: ValueError\n", + "- 10, 4.5: ValueError\n", + "- 10, -4: AssertionError (after we wrote assert statement)\n", + "- -10, 4: AssertionError (after we wrote assert statement)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "main_v5()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Exception hierarchy\n", + "- It helps to know some common excpeptions and to know their hierarchy.\n", + "- Don't try to memorize this but do make a note of the exceptions that occur the most often.\n", + "- Python documentation: https://docs.python.org/3/library/exceptions.html." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### `raise` statements\n", + "- Rather than using assert we can also raise a specific error. \n", + "\n", + "- Syntax (example):\n", + "```python\n", + "if BOOLEAN_CONDITION:\n", + " raise ArithmeticError(\"details of error\")\n", + "```\n", + "\n", + "<div>\n", + "<img src=\"attachment:raise.png\" width=\"500\"/>\n", + "</div>" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# simple example: raise exceptions instead of using assert statements\n", + "\n", + "age = int(input(\"enter your age: \"))\n", + "if age < 0:\n", + " raise ArithmeticError(\"age can't be negative\") # we can 'raise' a relevant exception\n", + "print(\"in five years you will be\", age + 5, \"years old\") " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "def pizza_size_v2(radius):\n", + " assert radius >= 0\n", + " return (radius ** 2) * math.pi\n", + "\n", + "def slice_size_v2(radius, slice_count):\n", + " assert slice_count >= 0\n", + " total_size = pizza_size_v2(radius)\n", + " return total_size * (1 / slice_count)\n", + "\n", + "def main_v6():\n", + " for i in range(5):\n", + " # grab input\n", + " try:\n", + " args = input(\"Enter pizza diameter(inches), slice count: \")\n", + " args = args.split(',')\n", + " radius = float(args[0].strip()) / 2\n", + " slices = int(args[1].strip())\n", + " except (ValueError, TypeError, IndexError) as e:\n", + " print(\"Bad input & reason is:\", str(e))\n", + " print(\"Type of exception:\", type(e))\n", + " continue\n", + "\n", + " # pizza analysis\n", + " try:\n", + " size = slice_size_v2(radius, slices)\n", + " print('PIZZA: radius={}, slices={}, slice square inches={}'\n", + " .format(radius, slices, size))\n", + " except (ZeroDivisionError, AssertionError) as e:\n", + " print(\"Pizza analysis error!\", str(e))\n", + " print(\"Type of exception:\", type(e))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Try these problematic inputs for the main() function invocation\n", + "\n", + "- 10, -4: ArithmeticError (after we wrote assert statement)\n", + "- -10, 4: ArithmeticError (after we wrote assert statement)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "main_v6()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} -- GitLab