diff --git a/Exercises/01-python/intro_to_python.ipynb b/Exercises/01-python/intro_to_python.ipynb index b564e5c..5d393f6 100644 --- a/Exercises/01-python/intro_to_python.ipynb +++ b/Exercises/01-python/intro_to_python.ipynb @@ -1,2062 +1,2061 @@ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Introduction to Python" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "This notebook was developed for the CS-233 Introduction to Machine Learning course at EPFL, adapted for the CIVIL-226 Introduction to Machine Learning for Engineers course, and re-adapted for the ME-390. We thank contributers in CS-233 ([CVLab](https://www.epfl.ch/labs/cvlab)) and CIVIL-226 ([VITA](https://www.epfl.ch/labs/vita/)).\n", " \n", "**Author(s):** Sena Kiciroglu, minor changes by Tom Winandy and David Mizrahi\n", "
\n", "Welcome to the first exercise of Introduction to Machine Learning. Today we will get familiar with Python, the language we will use for all the exercises of this course. \n", "\n", "This week we will introduce some important concepts in the basics of Python. Next week, you will learn how to work with NumPy, a popular Python library used for scientific computing. \n", "\n", "Python is a popular language to use for machine learning tasks. This is especially true because of the selection of **libraries and frameworks**, developed specifically for machine learning and scientific computing. To name a few, you have Keras, TensorFlow and PyTorch for developing neural networks, SciPy and NumPy used for scientific computing, Pandas for data analysis, etc. (You might also get to dabble in PyTorch in the upcoming weeks.)\n", "\n", "Python also allows you to write quick, readable, high-level code. It's great for fast prototyping. \n", "\n", "You can find a useful Python cheatsheet at: https://www.pythoncheatsheet.org/\n", "\n", "Let's get into it!\n" ] }, { "cell_type": "markdown", "metadata": { "tags": [] }, "source": [ "## 1. Jupyter Notebook\n", "\n", "In these exercises we will use Jupyter Notebooks, which contain Python code, text explanations and visuals. \n", "\n", "The Jupyter Notebook document (such as the one you are looking at right now) consists of cells containing Python code, text or other content. You can run each cell by clicking on the button `Run` in the top toolbar, or you can use a keyboard shortcut `Ctrl` + `Enter` (run current cell) or `Shift` + `Enter` (run current cell and move to the cell below)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2. Indentation and Control Flow" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally we get to start doing some coding!\n", "\n", "First thing to know: Python does not separate different lines of code with a semicolon `;`. So just RUN the following cell with no worries." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "jupyter": { "source_hidden": true }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "First line of code. I will declare some variables\n", "My variables are: a = 1, b = 2, c = Fish\n" ] } ], "source": [ "# This is a Python comment. Start the line with `#` for a comment\n", "print(\"First line of code. I will declare some variables\")\n", "a = 1 # second line!!\n", "b = 2\n", "c = \"Fish\"\n", "print(f\"My variables are: a = {a}, b = {b}, c = {c}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Easy! However, in Python you have to be careful and have perfect indentation (a reason why Python code is so readable). The reason is, Python uses indentation to keep track of what is part of the if statement, the loops and the functions. This is different from Java (this is assuming you know Java) where you would have curly brackets `{ }` for this purpose. \n", "\n", "Let's start with the if statement.\n", "\n", "### 2.1. If Statement\n", "\n", "The rule is, all indented parts after the `if condition :` belong to that branch of the if statement. \n", "\n", "```python\n", "if condition :\n", " inside the statement\n", " still inside the statement\n", "elif condition:\n", " inside the else-if part of the statement\n", "else:\n", " inside the else part of the statement\n", "outside the statement\n", " ```\n", " \n", "Let's see it in action:" ] }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": {}, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "It's me again! We are inside the first if statement\n", - "It's optional to use parentheses for the condition a + b ==3\n", - "Don't forget to put a `:` at the end of the condition!!\n", - "This is a second if statement inside the first one\n", - "I'm out of the second if statement, but still inside the first one\n", - "I'm not inside any of the if statements\n" + "ename": "NameError", + "evalue": "name 'a' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", + "Input \u001b[0;32mIn [1]\u001b[0m, in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[43ma\u001b[49m \u001b[38;5;241m+\u001b[39m b \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m3\u001b[39m:\n\u001b[1;32m 2\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mIt\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124ms me again! We are inside the first if statement\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 3\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mIt\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124ms optional to use parentheses for the condition a + b ==3\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n", + "\u001b[0;31mNameError\u001b[0m: name 'a' is not defined" ] } ], "source": [ "if a + b == 3:\n", " print(\"It's me again! We are inside the first if statement\")\n", " print(\"It's optional to use parentheses for the condition a + b ==3\")\n", " print(\"Don't forget to put a `:` at the end of the condition!!\")\n", " if (c == \"Fish\"):\n", " print(\"This is a second if statement inside the first one\")\n", " print(\"I'm out of the second if statement, but still inside the first one\")\n", "else:\n", " print(\"This is the else part of the first if statement.\")\n", " print(\"These lines will never be printed!\")\n", "print(\"I'm not inside any of the if statements\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Exercise \n", "\n", "Let's see another if statement example. Try to figure out what the output will be **BEFORE** running the cell below.\n", "\n", "Reminder, we declared\n", "\n", "```python\n", "a = 1\n", "b = 2\n", "c = \"Fish\"\n", " ```" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3\n", "6\n", "8\n", "10\n" ] } ], "source": [ "# Don't run me until you find the output first!\n", "if a == 5:\n", " print (\"1\")\n", " if b == 1:\n", " print(\"2\")\n", "# here comes an else-if \n", "elif a == 2 or c == \"Fish\":\n", " print(\"3\")\n", " \n", " if b == 1:\n", " print(\"4\")\n", " if b == 2:\n", " print(\"5\")\n", " if b == 2:\n", " print(\"6\")\n", " if c == \"Fish\":\n", " if a == 1:\n", " if b == 100:\n", " print(\"7\")\n", " else:\n", " print(\"8\")\n", " elif a == 1:\n", " print(\"9\")\n", "print (\"10\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.2. Loops\n", "\n", "Let's talk about loops. The syntax for a while-loop is:\n", "\n", "```python\n", "while condition:\n", " inside the loop\n", " inside the loop\n", " inside the loop\n", "outside the loop\n", " ```\n", " \n", " A small example:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Count is 1\n", "Count is 2\n", "Count is 3\n", "Left the loop!\n" ] } ], "source": [ "count = 0\n", "while count < 3:\n", " count += 1 # this is the same as count = count +1\n", " print(f\"Count is {count}\")\n", "print(\"Left the loop!\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For-loops iterate through sequences, in this way:\n", "\n", "```python\n", "for x in sequence:\n", " inside the loop\n", " inside the loop\n", " inside the loop\n", "outside the loop\n", "```\n", " \n", " An example is shown below:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "salmon\n", "*\n", "trout\n", "*\n", "parrot\n", "*\n", "clown\n", "*\n", "dory\n", "*\n", "fish list over!\n" ] } ], "source": [ "#Here is a basic list of strings\n", "fish_list = [\"salmon\", \"trout\", \"parrot\", \"clown\", \"dory\"]\n", "\n", "#The for loop:\n", "for fish in fish_list:\n", " print(fish)\n", " print(\"*\")\n", "print(\"fish list over!\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "An incredibly useful built-in function to use in for loops is `range()`. Range allows you to create a sequence of integers from the start (default is 0), to the stop, with a given step size (default is 1). We can use `range()` in for loops as shown in the example below." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0\n", "1\n", "2\n", "3\n", "4\n", "5\n", "6\n", "**\n", "2\n", "3\n", "4\n", "5\n", "6\n", "**\n", "2\n", "4\n", "6\n", "**\n", "6\n", "5\n", "4\n", "3\n", "2\n", "1\n", "0\n" ] } ], "source": [ "# \"default start is 0, default step size is 1\"\n", "for number in range(7):\n", " print (number)\n", "print(\"**\")\n", "\n", "# now we also provide the start as 2.\n", "# Default step size 1 is still used.\n", "for number in range(2,7):\n", " print(number)\n", "print(\"**\")\n", "\n", "# now we also provide the step size as 2.\n", "for number in range(2,7,2):\n", " print(number)\n", "print(\"**\") \n", "\n", "# what happens if step size is -1?\n", "for number in range(6,-1,-1):\n", " print(number)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "One more useful built-in function will be `enumerate()`. Let's go back to the fish list.\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "salmon\n", "trout\n", "parrot\n", "clown\n", "dory\n" ] } ], "source": [ "for fish in fish_list:\n", " print(fish)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "What if I also want to keep track of the index of the list element? You can use `enumerate()` which creates a sequence of 2-tuples, where each tuple contains an integer index and an actual element of the original list. Here is how it looks like:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0: salmon\n", "1: trout\n", "2: parrot\n", "3: clown\n", "4: dory\n" ] } ], "source": [ "for item_index, fish in enumerate(fish_list):\n", " print(f\"{item_index}: {fish}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3. Data Types and Basic Operations\n", "\n", "Python is a **dynamically typed** language. This means that the data type is inferred at run-time and can be changed during run-time. To check the type of a variable you can use the function `type()`." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1 is \n", "hi! is \n", "0.312 is \n", "3.0 is \n", "(3+2j) is \n", "True is \n" ] } ], "source": [ "# var_1 is first defined as an integer\n", "var_1 = 1\n", "print(f\"{var_1} is {type(var_1)}\")\n", "\n", "# var_1's type is changed to string\n", "var_1 = \"hi!\"\n", "print(f\"{var_1} is {type(var_1)}\")\n", "\n", "# more types\n", "var_1 = 0.312\n", "print(f\"{var_1} is {type(var_1)}\")\n", "var_1 = 3.\n", "print(f\"{var_1} is {type(var_1)}\")\n", "var_1 = 3+2j\n", "print(f\"{var_1} is {type(var_1)}\")\n", "var_1 = True\n", "print(f\"{var_1} is {type(var_1)}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3.1. Type Casting\n", "\n", "Some examples of type casting in Python:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "42 is \n", "42.0 is \n", "**\n", "3.14 is \n", "3 is \n", "**\n", "100 is \n", "100 is \n", "**\n", "1.23 is \n", "1.23 is \n", "**\n" ] } ], "source": [ "# From int to float\n", "var_1 = 42\n", "print(f\"{var_1} is {type(var_1)}\")\n", "var_1 = float(var_1)\n", "print(f\"{var_1} is {type(var_1)}\")\n", "print (\"**\")\n", "\n", "# From float to int\n", "var_2 = 3.14\n", "print(f\"{var_2} is {type(var_2)}\")\n", "var_2 = int(var_2)\n", "# This operations does FLOOR, not round!\n", "print(f\"{var_2} is {type(var_2)}\")\n", "print (\"**\")\n", "\n", "# From string to int\n", "var_3 = \"100\"\n", "print(f\"{var_3} is {type(var_3)}\")\n", "var_3 = int(var_3)\n", "print(f\"{var_3} is {type(var_3)}\")\n", "print(\"**\")\n", "\n", "# From float to string\n", "var_4 = 1.23\n", "print(f\"{var_4} is {type(var_4)}\")\n", "var_4 = str(var_4)\n", "print(f\"{var_4} is {type(var_4)}\")\n", "print(\"**\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3.2. Basic Operations\n", "\n", "Arithmetic operations are fairly standard. There are some examples below. \n", "* Look out for the difference between `/` division and `//` integer division.\n", "* `**` is used for power.\n", "* `%` is modulo." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "a + b = 57\n", "a - b = 43\n", "a * b = 350\n", "a / b = 7.142857142857143\n", "a // b = 7\n", "a ** b = 781250000000\n", "a % b = 1\n" ] } ], "source": [ "a = 50\n", "b = 7\n", "\n", "print(f\"a + b = {a + b}\")\n", "print(f\"a - b = {a - b}\")\n", "print(f\"a * b = {a * b}\")\n", "print(f\"a / b = {a / b}\")\n", "print(f\"a // b = {a // b}\") # integer divison\n", "print(f\"a ** b = {a ** b}\") # power\n", "print(f\"a % b = {a % b}\") # modulo" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Boolean operations are also fairly standard:" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(True and False) = False\n", "(True or False) = True\n", "((True and False) or True) = True\n" ] } ], "source": [ "print(f\"(True and False) = {True and False}\")\n", "print(f\"(True or False) = {True or False}\")\n", "print(f\"((True and False) or True) = {(True and False) or True}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can declare strings with a single quote `'`, a double quote `\"` or a three double quotes `\"\"\"`. The string declared with `\"\"\"` is known as a *docstring*, it can span multiple lines and is usually used to comment functions and classes.\n", "\n", "**Note:** Throughout the exercises, we will be using f-strings to format our strings nicely. You can learn more about them [here](https://realpython.com/python-f-strings/)." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Life's but a walking shadow, a poor player,\n", "That struts and frets his hour upon the stage,\n", "And then is heard no more. It is a tale\n", "Told by an idiot, full of sound and fury,\n", "Signifying nothing.\n" ] } ], "source": [ "a = 'Life\\'s but a walking shadow, a poor player,' \n", "print(a)\n", "a = \"That struts and frets his hour upon the stage,\"\n", "print(a)\n", "a = \"\"\"And then is heard no more. It is a tale\n", "Told by an idiot, full of sound and fury,\n", "Signifying nothing.\"\"\"\n", "print(a)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "True\n" ] } ], "source": [ "# The types of quotes do not change anything!\n", "a = \"fish\" # double quote\n", "b = 'fish' # single quote\n", "print(a == b) # the string is the same!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 4. Lists\n", "\n", "Lists are data types containing a sequence of values. The size of the list can change during run-time, as you add and remove elements from the list. \n", "\n", "Here is how you can create lists:" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "list_a []\n", "list_b [1, 2, 3, 4]\n", "list_c [1, 'cat', 0.23]\n", "list_d [1, ['cat', 'dog'], 2, 3]\n", "list_e [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]\n", "list_f [0, 1, 2, 3, 4]\n" ] } ], "source": [ "list_a = [] # empty\n", "print(f\"list_a {list_a}\")\n", "\n", "list_b = [1, 2, 3, 4] # 4 elements\n", "print(f\"list_b {list_b}\")\n", "\n", "list_c = [1, 'cat', 0.23] # mixed types\n", "print(f\"list_c {list_c}\")\n", "\n", "list_d = [1, ['cat', 'dog'], 2, 3] # list in list\n", "print(f\"list_d {list_d}\")\n", "\n", "list_e = [1] * 10 # a list of 1s of length 10\n", "print(f\"list_e {list_e}\")\n", "\n", "list_f = list(range(5)) # turns range object into a list\n", "print(f\"list_f {list_f}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Below we introduce some common operations with lists.\n", "* Use `len(list1)` to find the length of the list.\n", "* `list1.append(element)` to add an element to the end of the list.\n", "* `list1.insert(index, element)` to add an element to an index in the list\n", "* `list1.extend(list2)` to extend the elements of list1 with the elements of list2\n", "* `list1.pop()` removes last element from the list\n", "* `list1.pop(index)` removes the element at the given index\n", "* `list1.remove(element)` removes the first instance of the given element" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "b: ['great', 'minds', 'think', 'alike']\n", "length of b is 4\n", "b.append(\"sometimes\")= ['great', 'minds', 'think', 'alike', 'sometimes']\n", "c: ['-', 'Abraham', 'Lincoln']\n", "b.extend(c) = ['great', 'minds', 'think', 'alike', 'sometimes', '-', 'Abraham', 'Lincoln']\n", "b.pop(6) = ['great', 'minds', 'think', 'alike', 'sometimes', '-', 'Lincoln']\n", "b.remove(\"Lincoln\"); b.remove(\"-\") = ['great', 'minds', 'think', 'alike', 'sometimes']\n" ] } ], "source": [ "# Some common operations\n", "b = [\"great\", \"minds\", \"think\", \"alike\"]\n", "print(f\"b: {b}\")\n", "\n", "# finding the length\n", "print(f\"length of b is {len(b)}\")\n", "\n", "# append element to list\n", "b.append(\"sometimes\")\n", "print(f\"b.append(\\\"sometimes\\\")= {b}\")\n", "\n", "# extend list\n", "c = [\"-\", \"Abraham\", \"Lincoln\"]\n", "b.extend(c)\n", "print(f\"c: {c}\")\n", "print(f\"b.extend(c) = {b}\")\n", "\n", "# removes element and specific index\n", "b.pop(6) \n", "print(f\"b.pop(6) = {b}\")\n", "\n", "# remove specific element\n", "b.remove(\"Lincoln\") \n", "b.remove(\"-\")\n", "print(f\"b.remove(\\\"Lincoln\\\"); b.remove(\\\"-\\\") = {b}\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can also check whether an element is in a list in the following way:" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\"b\" is in list\n" ] } ], "source": [ "list_1 = [\"a\", \"b\", \"c\"]\n", "if \"b\" in list_1:\n", " print(\"\\\"b\\\" is in list\")\n", "else:\n", " print(\"\\\"b\\\" is not in list\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4.1. List Indexing and Slicing:\n", "\n", "You can extract a single element from a list in the following way:\n", "`list1[index]`\n", "\n", "In lists, the indices start from 0. You can also index elements from the end of the list to the beginning by $-1, -2, -3...$. Check out the image below for the example list:\n", "\n", "`list_1 = [\"a\", \"b\", \"c\", \"d\", \"e\"]`" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "* You can extract multiple elements by slicing. This will give you elements from the start up to **(but not including)** the end index.\n", "\n", " `list1[start_index:end_index]`\n", "\n", "\n", "* If you do not specify the `start_index`, you will retrieve the elements from index $0$ up to the `end_index`.\n", "\n", " `list1[:end_index]` is the same as `list1[0:end_index]`\n", "\n", "\n", "* If you do not specify the `end_index`, you will retrieve the elements from the `start_index` up to (and **including**) the end of the list.\n", "\n", " `list1[start_index:]`\n", "\n", "\n", "* You can provide a step size.\n", " `list1[start_index:end_index:step_size]`\n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Exercise\n", "\n", "Try to write the output of the following code **BEFORE** running the cell." ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "list_1[-3] = c\n", "list_1[0:2] = ['a', 'b']\n", "list_1[:4:2] = ['a', 'c']\n", "list_1[::-1] = ['e', 'd', 'c', 'b', 'a']\n", "list_1[-4:-1] = ['b', 'c', 'd']\n" ] } ], "source": [ "# Don't run BEFORE you solve it!\n", "list_1 = [\"a\", \"b\", \"c\", \"d\", \"e\"]\n", "\n", "print(f\"list_1[-3] = {list_1[-3]}\")\n", "print(f\"list_1[0:2] = {list_1[0:2]}\")\n", "print(f\"list_1[:4:2] = {list_1[:4:2]}\")\n", "print(f\"list_1[::-1] = {list_1[::-1]}\")\n", "print(f\"list_1[-4:-1] = {list_1[-4:-1]}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can also assign new values to indices using slicing. Here is an example:" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['a', 'b', 'c', 'd', '<3']\n", "['x', 'y', 'c', 'd', '<3']\n", "[':)', 'y', ':(', 'd', ':O']\n" ] } ], "source": [ "list_1 = [\"a\", \"b\", \"c\", \"d\", \"e\"]\n", "\n", "list_1[-1]= \"<3\"\n", "print(list_1)\n", "\n", "list_1[0:2] = [\"x\", \"y\"]\n", "print(list_1)\n", "\n", "list_1[::2] = [\":)\",\":(\", \":O\"]\n", "print(list_1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4.2. Copying\n", "\n", "We have one last thing to say about lists. Observe the behaviour of the following code:" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "list_1 before ['a', 'b', 'c', 'd', 'e']\n", "list_1 after ['a', 'b', 'c', 'd', 'e', 'Z']\n" ] } ], "source": [ "# Case 1:\n", "\n", "list_1 = [\"a\", \"b\", \"c\", \"d\", \"e\"]\n", "print(f\"list_1 before {list_1}\")\n", "\n", "list_2 = list_1\n", "list_2.append(\"Z\")\n", "\n", "print(f\"list_1 after {list_1}\")" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "list_1 before function ['a', 'b', 'c', 'd', 'e']\n", "list_1 after function ['a', 'b', 'c', 'd', 'e', 'Z']\n" ] } ], "source": [ "# Case 2:\n", "\n", "list_1 = [\"a\", \"b\", \"c\", \"d\", \"e\"]\n", "print(f\"list_1 before function {list_1}\")\n", "\n", "def function_that_changes_list(input_list):\n", " input_list.append(\"Z\")\n", "\n", "function_that_changes_list(list_1)\n", "\n", "print(f\"list_1 after function {list_1}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We never changed list_1 explicitly, but the values changed anyway. What's going on?\n", "\n", "Well, in Python, when you say `list_2 = list_1`, you are not actually creating a new list, you are only copying the **reference** to the same list. This means that they are actually two variables pointing to the same list! So when you change the values of `list_2`, the values of `list_1` also change (since they are referring to the same list). Something similar is at play when you pass this list to a function. So be careful!\n", "\n", "If you do not want this to happen, you can use the function `.copy()` to create a new object with the same values. \n", "\n", "#### Exercise\n", "\n", "Change the code below and fix the two cases given above using the `.copy()` function. Make sure the contents of `list_1` do not change." ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "list_1 before ['a', 'b', 'c', 'd', 'e']\n", "list_1 after ['a', 'b', 'c', 'd', 'e', 'Z']\n", "**\n", "list_1 before function ['a', 'b', 'c', 'd', 'e']\n", "list_1 after function ['a', 'b', 'c', 'd', 'e', 'Z']\n" ] } ], "source": [ "# Case 1\n", "list_1 = [\"a\", \"b\", \"c\", \"d\", \"e\"]\n", "print(f\"list_1 before {list_1}\")\n", "\n", "list_2 = list_1\n", "list_2.append(\"Z\")\n", "\n", "print(f\"list_1 after {list_1}\")\n", "print(\"**\")\n", "\n", "# Case 2\n", "list_1 = [\"a\", \"b\", \"c\", \"d\", \"e\"]\n", "print(f\"list_1 before function {list_1}\")\n", "\n", "def function_that_changes_list(input_list):\n", " input_list.append(\"Z\")\n", "\n", "list_2 = list_1\n", "function_that_changes_list(list_2)\n", "\n", "print(f\"list_1 after function {list_1}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Exercise\n", "\n", "Now that we know how lists work, here is a quick exercise for you. Fill in the function below that takes a list and returns True if it is a palindrome, False if it is not. Palindromes are defined as sequences that read the same forwards and backwards.\n", "Examples of palindrome lists:\n", "* [\"cat\", \"dog\", \"fish\", \"dog\", \"cat\"]\n", "* [0, 1, 2, 3, 3, 2, 1, 0]\n", "* [1]\n", "* []\n", "\n", "You may use a for-loop in this exercise. However, if you're feeling ambitious try to do it in 1 line, without using a for-loop (hint: use slicing)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def function_is_palindrome(input_list):\n", " is_palindrome = True\n", " # Your code here\n", " return is_palindrome" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Correct! :)\n" ] } ], "source": [ "test_list_1 = [\"cat\", \"dog\", \"fish\", \"dog\", \"cat\"]\n", "res_1 = function_is_palindrome(test_list_1)\n", "\n", "test_list_2 = [\"cat\", \"dog\", \"fish\", \"bird\", \"dog\", \"cat\"]\n", "res_2 = function_is_palindrome(test_list_2)\n", "\n", "test_list_3 = [\"cat\"]\n", "res_3 = function_is_palindrome(test_list_3)\n", "\n", "test_list_4 = [\"cat\", \"cat\"]\n", "res_4 = function_is_palindrome(test_list_4)\n", "\n", "if (res_1 and not res_2 and res_3 and res_4):\n", " print(\"Test failed\")\n", "else:\n", " print(\"Correct! :)\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 5. Tuples\n", "\n", "Tuples are similar to lists but they are fixed in size and **immutable**, which means that change is not allowed.\n", "We declare tuples in the following way using parentheses`()`:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "tuple_1 = ('wash', 'your', 'hands', 'with', 'soap')\n" ] } ], "source": [ "tuple_1 = (\"wash\", \"your\", \"hands\", \"with\", \"soap\")\n", "\n", "print(f\"tuple_1 = {tuple_1}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Since change is not allowed, observe the result of the following piece of code." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "ename": "TypeError", "evalue": "'tuple' object does not support item assignment", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", "Input \u001b[0;32mIn [6]\u001b[0m, in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43mtuple_1\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m2\u001b[39;49m\u001b[43m]\u001b[49m \u001b[38;5;241m=\u001b[39m (\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mface\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n", "\u001b[0;31mTypeError\u001b[0m: 'tuple' object does not support item assignment" ] } ], "source": [ "tuple_1[2] = (\"face\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can typecast from list to tuple and vice versa! " ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['here', 'comes', 'the', 'sun'] is \n", "('here', 'comes', 'the', 'sun') is \n", "['here', 'comes', 'the', 'sun'] is \n" ] } ], "source": [ "sequence_1 = [\"here\", \"comes\", \"the\", \"sun\"]\n", "print(f\"{sequence_1} is {type(sequence_1)}\")\n", "\n", "\n", "# from list to tuple\n", "sequence_1 = tuple(sequence_1)\n", "print(f\"{sequence_1} is {type(sequence_1)}\")\n", "\n", "#from tuple to list\n", "sequence_1 = list(sequence_1)\n", "print(f\"{sequence_1} is {type(sequence_1)}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 6. Dictionaries\n", "\n", "An incredibly useful data type to know, you might also know dictionaries as \"hash maps\". Dictionaries are collections of \"key: value\" pairs. You can access the values using the keys in $O(1)$ time.\n", "\n", "The keys of a dictionary must be **immutable** and **unique**. Below we show how to define a dictionary.\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "shopping_list = {'apples': 3, 'pears': 2, 'eggs': 6, 'bread': 1, 'yogurt': 1}\n", "**\n", "book_dict = {}\n", "book_dict = {'vonnegut': \"cat's cradle\", 'ishiguro': 'never let me go'}\n", "**\n", "dict_keys(['vonnegut', 'ishiguro'])\n", "dict_values([\"cat's cradle\", 'never let me go'])\n", "**\n", "vonnegut : cat's cradle\n", "ishiguro : never let me go\n", "**\n", "modified book_dict = {'vonnegut': \"cat's cradle\", 'ishiguro': 'a pale view of hills'}\n", "**\n", "book_dict with removed value = {'vonnegut': \"cat's cradle\"}\n", "removed_value = a pale view of hills\n" ] } ], "source": [ "shopping_list = {\"apples\": 3, \"pears\":2, \"eggs\":6, \"bread\":1, \"yogurt\":1}\n", "print(f\"shopping_list = {shopping_list}\")\n", "print(\"**\")\n", "\n", "\n", "book_dict = {}\n", "print(f\"book_dict = {book_dict}\")\n", "#add key value pairs\n", "book_dict[\"vonnegut\"] = \"cat\\'s cradle\"\n", "book_dict[\"ishiguro\"] = \"never let me go\"\n", "print(f\"book_dict = {book_dict}\")\n", "print(\"**\")\n", "\n", "# we can retrieve the dict keys:\n", "print(book_dict.keys())\n", "# and the dict values:\n", "print(book_dict.values())\n", "print(\"**\")\n", "\n", "#we can also iterate through the dict keys and values with a for-loop\n", "for key, value in book_dict.items():\n", " print(f\"{key} : {value}\")\n", "\n", "print(\"**\")\n", "#we can modify the value of a key\n", "book_dict[\"ishiguro\"] = \"a pale view of hills\"\n", "print(f\"modified book_dict = {book_dict}\")\n", "print(\"**\")\n", "\n", "#and we can remove a key completely\n", "removed_value = book_dict.pop(\"ishiguro\")\n", "print(f\"book_dict with removed value = {book_dict}\")\n", "print(f\"removed_value = {removed_value}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 7. Functions\n", "\n", "You can define a function in Python in the following way:" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "multiply(100, 2) = 200\n" ] } ], "source": [ "def multiply(a, b):\n", " return a * b\n", "\n", "print(f\"multiply(100, 2) = {multiply(100, 2)}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can have default arguments by specifying their default value in the parameters." ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "add(1, 2, 100, 1000) = 1103\n", "add(1, 2, 100) = 104\n", "add(1, 2) = 4\n", "add(1, 2, d=1000) = 1003\n" ] } ], "source": [ "def add(a, b, c=0, d=1):\n", " return a + b + c + d\n", "\n", "# use no default arguments\n", "print(f\"add(1, 2, 100, 1000) = {add(1, 2, 100, 1000)}\")\n", "\n", "# use the default value of d\n", "print(f\"add(1, 2, 100) = {add(1, 2, 100)}\")\n", "\n", "# use the default value of c and d\n", "print(f\"add(1, 2) = {add(1, 2)}\")\n", "\n", "# use the default value of c\n", "print(f\"add(1, 2, d=1000) = {add(1, 2, d=1000)}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A function can return multiple values in a tuple. You can assign the values of the tuple to separate variables. This is called **tuple unpacking**." ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "min_val: 1, max_val: 4\n" ] } ], "source": [ "def min_max(input_list):\n", " return min(input_list), max(input_list)\n", "\n", "\n", "test_list = [1,2,3,4]\n", "min_val, max_val = min_max(test_list)\n", "print(f\"min_val: {min_val}, max_val: {max_val}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note: You have seen tuple unpacking when using function `enumerate` in for-loop." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 7.1. Common Built-in Functions\n", "\n", "Here we introduce some nifty commonly used built-in functions. \n", "\n", "* You already learned `range()`, `enumerate()`!\n", "* We have also seen `type()` to return the type of the object. We use `str()`, `int()`, `float()`, `list()`, `tuple()` for typecasting.\n", "* The functions `len()`, `sum()`, `min()`, `max()`, `any()`, `all()`, `sorted()`, `zip()` are useful for lists and tuples.\n", "\n", "Let's see them in action below" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "list_1 = [0, 1, 2, 3, 4]\n", "len(list_1) = 5\n", "sum(list_1) = 10\n", "min(list_1) = 0\n", "max(list_1) = 4\n", "**\n", "list_2 = [5, 3, 1, 2, 0, 6]\n", "sorted(list_2) = [0, 1, 2, 3, 5, 6]\n", "**\n", "list_3 = [1, 1, 1]\n", "any(list_3) = True\n", "all(list_3) = True\n", "list_4 = [0, 1, 1]\n", "any(list_4) = True\n", "all(list_4) = False\n", "list_5 = [0, 0, 0]\n", "any(list_5) = False\n", "all(list_5) = False\n", "**\n", "x [1, 2, 3]\n", "y [4, 5, 6]\n", "zipped [(1, 4), (2, 5), (3, 6)]\n" ] } ], "source": [ "list_1 = list(range(5))\n", "print(f\"list_1 = {list_1}\")\n", "\n", "print(f\"len(list_1) = {len(list_1)}\")\n", "print(f\"sum(list_1) = {sum(list_1)}\")\n", "print(f\"min(list_1) = {min(list_1)}\")\n", "print(f\"max(list_1) = {max(list_1)}\")\n", "print(\"**\")\n", "\n", "\n", "list_2 = [5,3,1,2,0,6]\n", "print(f\"list_2 = {list_2}\")\n", "print(f\"sorted(list_2) = {sorted(list_2)}\")\n", "print(\"**\")\n", "\n", "\n", "# any checks whether there are any 1s in the list (OR)\n", "# all checks whether all elements are 1s. (AND)\n", "# in Python: 1 = True, 0 = False\n", "list_3 = [1, 1, 1]\n", "print(f\"list_3 = {list_3}\")\n", "print(f\"any(list_3) = {any(list_3)}\")\n", "print(f\"all(list_3) = {all(list_3)}\")\n", "\n", "list_4 = [0, 1, 1]\n", "print(f\"list_4 = {list_4}\")\n", "print(f\"any(list_4) = {any(list_4)}\")\n", "print(f\"all(list_4) = {all(list_4)}\")\n", "\n", "list_5 = [0, 0, 0]\n", "print(f\"list_5 = {list_5}\")\n", "print(f\"any(list_5) = {any(list_5)}\")\n", "print(f\"all(list_5) = {all(list_5)}\")\n", "print(\"**\")\n", "\n", "# zip function:\n", "x = [1,2,3]\n", "y = [4,5,6]\n", "zipped = zip(x,y)\n", "print(f\"x {x}\")\n", "print(f\"y {y}\")\n", "print(f\"zipped {list(zipped)}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 7.2. List Comprehensions\n", "\n", "One of the most practical things about Python is that you can do many things on just a single line. One popular example is so called *list comprehensions*, a specific syntax to create and initalize lists of objects. Here are some examples.\n", "\n", "A syntax for list comprehension is shown below:\n", "`[thing for thing in list]`\n", "\n", "Let's make it more concrete with an example." ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "list_of_numbers = [1, 2, 3, 101, 102, 103]\n", "doubled_list = [2, 4, 6, 202, 204, 206]\n", "float_list = [1.0, 2.0, 3.0, 101.0, 102.0, 103.0]\n" ] } ], "source": [ "list_of_numbers = [1, 2, 3, 101, 102, 103]\n", "print(f\"list_of_numbers = {list_of_numbers}\")\n", "\n", "#I want to create a new list with all these items doubled.\n", "doubled_list = [2 * elem for elem in list_of_numbers]\n", "print(f\"doubled_list = {doubled_list}\")\n", "\n", "#A new list with all these items as floats\n", "float_list = [float(elem) for elem in list_of_numbers]\n", "print(f\"float_list = {float_list}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's make it more interesting by adding an if in there:\n", "\n", "`[thing for thing in list if condition]`\n" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "conditional_doubled_list = [202, 204, 206]\n" ] } ], "source": [ "#I want to create a new list with all these items doubled\n", "#IF the element is above 100\n", "conditional_doubled_list = [2 * elem for elem in list_of_numbers if elem > 100]\n", "print(f\"conditional_doubled_list = {conditional_doubled_list}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Exercise\n", "\n", "You will be given a list of vocabulary words. Your task is to use list comprehensions to iterate through a document and create a new list including the words that are included in the vocabulary. You don't need to worry about duplicates.\n", "\n", "Example: \n", "```python\n", "vocabulary = [\"a\" \"c\", \"e\"]\n", "document = [\"a\", \"b\", \"c\", \"d\"]\n", "new_list = [\"a\", \"c\"]\n", "```" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "vocabulary = ['epfl', 'europe', 'swiss', 'switzerland', 'best', 'education', 'high', 'higher', 'research', 'school', 'science', 'students', 'technology', 'top-tier', 'university']\n", "\n", "document = \"\"\"The École polytechnique fédérale de Lausanne (EPFL) is a research institute\n", "and university in Lausanne, Switzerland, that specializes in natural sciences and engineering.\n", "It is one of the two Swiss Federal Institutes of Technology, and it has three main missions: \n", "education, research and technology transfer at the highest international level. EPFL is widely regarded \n", "as a world leading university. The QS World University Rankings ranks EPFL 12th in the world \n", "across all fields in their 2017/2018 ranking, whilst Times Higher Education World \n", "University Rankings ranks EPFL as the world's 11th best school for Engineering and Technology.\"\"\"\n", "document_parsed = document.split()\n", "document_parsed = [word.lower() for word in document_parsed]\n", "new_list = []\n", "\n", "#your code here\n", "new_list = [elem for elem in document_parsed if elem in vocabulary]\n", "\n", "#We convert the list to a set and then back to a list. We do this because converting it to a set automatically\n", "#removes duplicates (since sets are sequences that do not contain duplicates). afterwards we sort it.\n", "new_list = sorted(list(set(new_list)))\n" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Incorrect :(\n" ] } ], "source": [ "correct_result = ['best', 'education', 'epfl', 'higher', 'research', 'school', 'swiss', 'technology', 'university']\n", "\n", "if new_list == correct_result:\n", " print (\"Correct! :)\")\n", "else:\n", " print (\"Incorrect :(\")\n" ] }, { "cell_type": "markdown", "metadata": { "tags": [] }, "source": [ "## 8. (optional now - useful later on) Object-Oriented Programming\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Object-oriented programming is a programming paradigm that provides a means of structuring programs so that properties and behaviors are bundled into individual objects.\n", "\n", "For this end, we use classes. Classes are used to create user-defined data structures. Classes define functions called methods, which identify the behaviors and actions that an object created from the class can perform with its data." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "All class definitions start with the class keyword, which is followed by the name of the class and a colon. Any code that is indented below the class definition is considered part of the class’s body. To start, let's declare an `EPFL_faculty` class." ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "class EPFL_faculty:\n", "\n", " def __init__(self, name, number_of_students):\n", " self.name = name\n", " self.number_of_students = number_of_students\n", "\n", " # Instance method\n", " def description(self):\n", " return f\"The faculty {self.name} has {self.number_of_students} students\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "While the class is the blueprint, an instance is an object that is built from a class and contains real data. `.__init__()` sets the initial state of the object by assigning the values of the object’s properties. That is, `.__init__()` initializes each new instance of the class." ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "sti = EPFL_faculty(\"STI\", 500)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now that the instance `sti` has been created, we can call the method description." ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'The faculty STI has 500 students'" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sti.description()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Inheritance is the process by which one class takes on the attributes and methods of another. Newly formed classes are called child classes, and the classes that child classes are derived from are called parent classes. Child classes inherit from the parent's attributs and methods but it can overwrite methods. Let's define a class `EPFL_section` that inherits from `EPFL_faculty` and that overwrites the method `description(self)`." ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [], "source": [ "class EPFL_section(EPFL_faculty):\n", " \n", " def description(self):\n", " return f\"The section {self.name} has {self.number_of_students} students\"" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [], "source": [ "genie_mechanique = EPFL_section(\"GM\", 200)" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'The section GM has 200 students'" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "genie_mechanique.description()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__Disclaimer__: This part of the tutorial and its text was inspired by and taken from \"Object-Oriented Programming (OOP) in Python 3\" by David Amos. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Additional OOP resources" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For further information on object-oriented programming and classes in Python, here are two useful resources:\n", "* Object-Oriented Programming (OOP) in Python 3: https://realpython.com/python3-object-oriented-programming/\n", "* Classes from the official Python Tutorial: https://docs.python.org/3/tutorial/classes.html" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 9. (optional now - useful later on) Matplotlib" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Perhaps the most widely used plotting library in Python is Matplotlib. If you've ever used MATLAB, you'll find that the functions look pretty similar. \n", "\n", "In the following exercise sessions, we won't ask you to do any plotting. So this part is optional for those who are interested in having a short introduction.\n", "\n", "First, we will import Matplotlib." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Importing in Python\n", "\n", "* A short note on importing: to be able to use modules in our code, we import them. \n", " \n", " example: `import numpy`\n", " \n", "\n", "* We can also select a name for the imported module.\n", " \n", " example: `import numpy as np`. Now when we call numpy functions, we will always use `np.` as a prefix, i.e. `np.zeros()`\n", " \n", "\n", "* You can also choose to only import selected functions/variables/classes from the module. \n", " \n", " example: `from numpy import arange`. Now you can use this function as `arange(5)`. You cannot use any other functions from the numpy module as you did not import them." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# To import Matplotlib we do:\n", "\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's do some plotting! \n", "\n", "Let's start with the simplest of plots, the good old line-plot. The function we will use is `plot()`" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#Let's create some data first to plot\n", "x = list(range(10))\n", "y = [2,3,5,1,0,2,3,0,0,1]\n", "\n", "#first create a figure\n", "fig = plt.figure()\n", "\n", "#now do the plotting\n", "#specifying a color and marker are optional.\n", "#check out the documentation to see what else you can do with the plot function\n", "plt.plot(x, y, marker=\"*\", color=\"r\")\n", "\n", "#axis labels and title\n", "plt.xlabel(\"x\")\n", "plt.ylabel(\"y\")\n", "plt.title(\"just a random plot\")\n", "\n", "#so that we see the plot\n", "plt.show()\n", "\n", "#close the plot\n", "plt.close(fig)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Exercise\n", "\n", "You can plot two lines on top of one another by calling the `plt.plot()` function consecutively. Try to implement this! Also, specify the parameter `label` of the `plt.plot()` function and call the function `plt.legend()` to create a legend for your graph. It should look like the figure shown below." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![result](images/two_lines_plot.png)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#Let's create some data first to plot\n", "x = list(range(10))\n", "y1 = [2,3,5,1,0,2,3,0,0,1]\n", "y2 = [1,2,3,5,1,0,2,3,0,0]\n", "\n", "#first create a figure\n", "fig = plt.figure()\n", "#your code here\n", "plt.plot(x, y1,marker=\"*\",color=\"r\",label=\"red line\")\n", "plt.plot(x, y2,marker=\"^\",color=\"b\",label=\"green line\")\n", "\n", "plt.legend(loc='upper left', bbox_to_anchor=(0.73, 1))\n", "\n", "#axis labels and title\n", "plt.xlabel(\"x\")\n", "plt.ylabel(\"y\")\n", "plt.title(\"just a random plot\")\n", "\n", "#so that we see the plot\n", "plt.show()\n", "\n", "#close the plot\n", "plt.close(fig)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can create scatter plots (line plots without lines) with `scatter()`" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#Let's create some data first to plot\n", "x = list(range(10))\n", "y1 = [2,3,5,1,0,2,3,0,0,1]\n", "\n", "#first create a figure\n", "fig = plt.figure()\n", "\n", "#now do the plotting\n", "p1 = plt.scatter(x, y1, marker=\"*\", color=\"r\")\n", "\n", "#axis labels and title\n", "plt.xlabel(\"x\")\n", "plt.ylabel(\"y\")\n", "plt.title(\"just a random scatter plot\")\n", "\n", "#so that we see the plot\n", "plt.show()\n", "\n", "#close the plot\n", "plt.close(fig)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And you can read and display images with `imread()` and `imshow()`" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#first create a figure\n", "fig = plt.figure()\n", "\n", "#now do the plotting\n", "im = plt.imread(\"images/krabby_patty.jpg\")\n", "plt.imshow(im)\n", "\n", "#axis labels and title\n", "plt.xlabel(\"x\")\n", "plt.ylabel(\"y\")\n", "plt.title(\"krabby patty\")\n", "\n", "#so that we see the plot\n", "plt.show()\n", "\n", "#close the plot\n", "plt.close(fig)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And that's all for this exercise! If you have any problems, just ask (or even Google) them. You can check out the official Python tutorials for further learning.\n", "\n", "https://docs.python.org/3/tutorial/" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python", "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.8.10" } }, "nbformat": 4, "nbformat_minor": 4 }