Prepare repository for lecture 02 #9
| @ -2,7 +2,11 @@ | |||||||
|  "cells": [ |  "cells": [ | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "<div style='background-image: url(\"../images/header.svg\") ; padding: 0px ; background-size: cover ; border-radius: 5px ; height: 250px'>\n", |     "<div style='background-image: url(\"../images/header.svg\") ; padding: 0px ; background-size: cover ; border-radius: 5px ; height: 250px'>\n", | ||||||
|     "    <div style=\"float: right ; margin: 50px ; padding: 20px ; background: rgba(255 , 255 , 255 , 0.7) ; width: 50% ; height: 150px\">\n", |     "    <div style=\"float: right ; margin: 50px ; padding: 20px ; background: rgba(255 , 255 , 255 , 0.7) ; width: 50% ; height: 150px\">\n", | ||||||
| @ -11,13 +15,8 @@ | |||||||
|     "            <div style=\"font-size: large ; padding-top: 20px ; color: rgba(0 , 0 , 0 , 0.5)\">A super quick crash course</div>\n", |     "            <div style=\"font-size: large ; padding-top: 20px ; color: rgba(0 , 0 , 0 , 0.5)\">A super quick crash course</div>\n", | ||||||
|     "        </div>\n", |     "        </div>\n", | ||||||
|     "    </div>\n", |     "    </div>\n", | ||||||
|     "</div>" |     "</div>\n", | ||||||
|    ] |     "\n", | ||||||
|   }, |  | ||||||
|   { |  | ||||||
|    "cell_type": "markdown", |  | ||||||
|    "metadata": {}, |  | ||||||
|    "source": [ |  | ||||||
|     "Seismo-Live: http://seismo-live.org\n", |     "Seismo-Live: http://seismo-live.org\n", | ||||||
|     "\n", |     "\n", | ||||||
|     "##### Authors:\n", |     "##### Authors:\n", | ||||||
| @ -28,14 +27,26 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "This notebook is a very quick introduction to Python and in particular its scientific ecosystem in case you have never seen it before. It furthermore grants a possibility to get to know the [IPython/Jupyter notebook](http://www.nature.com/news/interactive-notebooks-sharing-the-code-1.16261). [See here for the official documentation](http://nbviewer.jupyter.org/github/jupyter/notebook/blob/master/docs/source/examples/Notebook/Notebook%20Basics.ipynb) of the Jupyter notebook - a ton more information can be found online.\n", |     "This notebook is a very quick introduction to Python and in particular its scientific ecosystem in case you have never seen it before. It furthermore grants a possibility to get to know the [IPython/Jupyter notebook](http://www.nature.com/news/interactive-notebooks-sharing-the-code-1.16261). [See here for the official documentation](http://nbviewer.jupyter.org/github/jupyter/notebook/blob/master/docs/source/examples/Notebook/Notebook%20Basics.ipynb) of the Jupyter notebook - a ton more information can be found online.\n", | ||||||
|     "\n", |     "\n", | ||||||
|     "\n", |     "\n", | ||||||
|     "A lot of motivational writing on *Why Python?* is out there so we will not repeat it here and just condense it to a single sentence: **Python is a good and easy to learn, open-source, general purpose programming language that happens to be very good for many scientific tasks (due to its vast scientific ecosystem).**\n", |     "A lot of motivational writing on *Why Python?* is out there so we will not repeat it here and just condense it to a single sentence: **Python is a good and easy to learn, open-source, general purpose programming language that happens to be very good for many scientific tasks (due to its vast scientific ecosystem).**" | ||||||
|     "\n", |    ] | ||||||
|     "\n", |   }, | ||||||
|  |   { | ||||||
|  |    "cell_type": "markdown", | ||||||
|  |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|  |    "source": [ | ||||||
|     "#### Quick Reference on How to Use This Notebook\n", |     "#### Quick Reference on How to Use This Notebook\n", | ||||||
|     "\n", |     "\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -57,8 +68,17 @@ | |||||||
|     "\n", |     "\n", | ||||||
|     "```bash\n", |     "```bash\n", | ||||||
|     "$ ipython\n", |     "$ ipython\n", | ||||||
|     "```\n", |     "```" | ||||||
|     "\n", |    ] | ||||||
|  |   }, | ||||||
|  |   { | ||||||
|  |    "cell_type": "markdown", | ||||||
|  |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|  |    "source": [ | ||||||
|     "## Notebook Setup\n", |     "## Notebook Setup\n", | ||||||
|     "\n", |     "\n", | ||||||
|     "First things first: In many notebooks you will find a cell similar to the following one. **Always execute it!** They do a couple of things:\n", |     "First things first: In many notebooks you will find a cell similar to the following one. **Always execute it!** They do a couple of things:\n", | ||||||
| @ -71,13 +91,17 @@ | |||||||
|     "\n", |     "\n", | ||||||
|     "This essentially makes the notebooks work under Python 2 and Python 3.\n", |     "This essentially makes the notebooks work under Python 2 and Python 3.\n", | ||||||
|     "\n", |     "\n", | ||||||
|     "* Plots look quite a bit nicer (this is optional).\n" |     "* Plots look quite a bit nicer (this is optional)." | ||||||
|    ] |    ] | ||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# Plots now appear in the notebook.\n", |     "# Plots now appear in the notebook.\n", | ||||||
| @ -90,7 +114,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "---\n", |     "---\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -100,6 +128,8 @@ | |||||||
|     "\n", |     "\n", | ||||||
|     "If you have any question regarding some specific Python functionality you can consult the official [Python documenation](http://docs.python.org/).\n", |     "If you have any question regarding some specific Python functionality you can consult the official [Python documenation](http://docs.python.org/).\n", | ||||||
|     " \n", |     " \n", | ||||||
|  |     "### Tutorials\n", | ||||||
|  |     "\n", | ||||||
|     "Furthermore a large number of Python tutorials, introductions, and books are available online. Here are some examples for those interested in learning more.\n", |     "Furthermore a large number of Python tutorials, introductions, and books are available online. Here are some examples for those interested in learning more.\n", | ||||||
|     " \n", |     " \n", | ||||||
|     "* [Learn Python The Hard Way](http://learnpythonthehardway.org/book/)\n", |     "* [Learn Python The Hard Way](http://learnpythonthehardway.org/book/)\n", | ||||||
| @ -107,12 +137,24 @@ | |||||||
|     "* [The Official Python Tutorial](http://docs.python.org/2/tutorial/index.html)\n", |     "* [The Official Python Tutorial](http://docs.python.org/2/tutorial/index.html)\n", | ||||||
|     "* [Think Python Book](http://www.greenteapress.com/thinkpython/thinkpython.html)\n", |     "* [Think Python Book](http://www.greenteapress.com/thinkpython/thinkpython.html)\n", | ||||||
|     " \n", |     " \n", | ||||||
|  |     "### Matlab\n", | ||||||
|  |     "\n", | ||||||
|     "Some people might be used to Matlab - this helps:\n", |     "Some people might be used to Matlab - this helps:\n", | ||||||
|     " \n", |     " \n", | ||||||
|     "* [NumPy for Matlab Users Introdution](http://wiki.scipy.org/NumPy_for_Matlab_Users)\n", |     "* [NumPy for Matlab Users Introdution](http://wiki.scipy.org/NumPy_for_Matlab_Users)\n", | ||||||
|     "* [NumPy for Matlab Users Cheatsheet](http://mathesaurus.sourceforge.net/matlab-numpy.html)\n", |     "* [NumPy for Matlab Users Cheatsheet](http://mathesaurus.sourceforge.net/matlab-numpy.html)" | ||||||
|     " \n", |    ] | ||||||
|     " \n", |   }, | ||||||
|  |   { | ||||||
|  |    "cell_type": "markdown", | ||||||
|  |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|  |    "source": [ | ||||||
|  |     "### More\n", | ||||||
|  |     "\n", | ||||||
|     "Additionally there is an abundance of resources introducing and teaching parts of the scientific Python ecosystem.\n", |     "Additionally there is an abundance of resources introducing and teaching parts of the scientific Python ecosystem.\n", | ||||||
|     " \n", |     " \n", | ||||||
|     "* [NumPy Tutorial](http://wiki.scipy.org/Tentative_NumPy_Tutorial)\n", |     "* [NumPy Tutorial](http://wiki.scipy.org/Tentative_NumPy_Tutorial)\n", | ||||||
| @ -133,7 +175,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "## Core Python Crash Course\n", |     "## Core Python Crash Course\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -150,7 +196,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# Three basic types of numbers\n", |     "# Three basic types of numbers\n", | ||||||
| @ -170,22 +220,25 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|    "source": [ |     "slideshow": { | ||||||
|     "### 2. Strings" |      "slide_type": "slide" | ||||||
|    ] |     } | ||||||
|   }, |    }, | ||||||
|   { |  | ||||||
|    "cell_type": "markdown", |  | ||||||
|    "metadata": {}, |  | ||||||
|    "source": [ |    "source": [ | ||||||
|  |     "### 2. Strings\n", | ||||||
|  |     "\n", | ||||||
|     "Just enclose something in single or double quotes and it will become a string. On Python 3 it defaults to unicode strings, e.g. non Latin alphabets and other symbols." |     "Just enclose something in single or double quotes and it will become a string. On Python 3 it defaults to unicode strings, e.g. non Latin alphabets and other symbols." | ||||||
|    ] |    ] | ||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# You can use single or double quotes to create strings.\n", |     "# You can use single or double quotes to create strings.\n", | ||||||
| @ -210,7 +263,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "#### Exercise\n", |     "#### Exercise\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -220,7 +277,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "name = \"kasper\"\n", |     "name = \"kasper\"\n", | ||||||
| @ -229,22 +290,25 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|    "source": [ |     "slideshow": { | ||||||
|     "### 3. Lists" |      "slide_type": "slide" | ||||||
|    ] |     } | ||||||
|   }, |    }, | ||||||
|   { |  | ||||||
|    "cell_type": "markdown", |  | ||||||
|    "metadata": {}, |  | ||||||
|    "source": [ |    "source": [ | ||||||
|  |     "### 3. Lists\n", | ||||||
|  |     "\n", | ||||||
|     "Python has two main collection types: List and dictionaries. The former is just an ordered collection of objects and is introduced here." |     "Python has two main collection types: List and dictionaries. The former is just an ordered collection of objects and is introduced here." | ||||||
|    ] |    ] | ||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# List use square brackets and are simple ordered collections of things.\n", |     "# List use square brackets and are simple ordered collections of things.\n", | ||||||
| @ -266,7 +330,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "### 4. Dictionaries\n", |     "### 4. Dictionaries\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -276,7 +344,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# Dictionaries have named fields and no inherent order. As is\n", |     "# Dictionaries have named fields and no inherent order. As is\n", | ||||||
| @ -304,7 +376,10 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": { |    "metadata": { | ||||||
|     "collapsed": true |     "collapsed": true, | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|    }, |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "### 5. Functions\n", |     "### 5. Functions\n", | ||||||
| @ -315,7 +390,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# Functions are defined using the def keyword.\n", |     "# Functions are defined using the def keyword.\n", | ||||||
| @ -339,7 +418,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "### 6. Imports\n", |     "### 6. Imports\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -349,7 +432,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# Import anything, and use it with the dot accessor.\n", |     "# Import anything, and use it with the dot accessor.\n", | ||||||
| @ -369,7 +456,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "How to know what is available?\n", |     "How to know what is available?\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -380,7 +471,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "print(dir(math))" |     "print(dir(math))" | ||||||
| @ -388,7 +483,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "Typing the dot and the TAB will kick off tab-completion." |     "Typing the dot and the TAB will kick off tab-completion." | ||||||
|    ] |    ] | ||||||
| @ -396,7 +495,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "math." |     "math." | ||||||
| @ -404,7 +507,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "In the IPython framework you can also use a question mark to view the documentation of modules and functions." |     "In the IPython framework you can also use a question mark to view the documentation of modules and functions." | ||||||
|    ] |    ] | ||||||
| @ -412,7 +519,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "math.cos?" |     "math.cos?" | ||||||
| @ -420,7 +531,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "### 7. Control Flow\n", |     "### 7. Control Flow\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -430,7 +545,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "temp = [\"a\", \"b\", \"c\"]\n", |     "temp = [\"a\", \"b\", \"c\"]\n", | ||||||
| @ -447,7 +566,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# Useful to know is the range() function.\n", |     "# Useful to know is the range() function.\n", | ||||||
| @ -457,15 +580,23 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "The second crucial control flow structure are if/else conditional and they work the same as in any other language." |     "The second crucial control flow structure are ***if/else*** conditional and they work the same as in any other language." | ||||||
|    ] |    ] | ||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# If/else works as expected.\n", |     "# If/else works as expected.\n", | ||||||
| @ -479,15 +610,27 @@ | |||||||
|     "    print(\"wait what?\")" |     "    print(\"wait what?\")" | ||||||
|    ] |    ] | ||||||
|   }, |   }, | ||||||
|  |   { | ||||||
|  |    "cell_type": "markdown", | ||||||
|  |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|  |    "source": [ | ||||||
|  |     "List comprehensions are a nice way to write compact loops. Make sure you understand this as it is very common in Python." | ||||||
|  |    ] | ||||||
|  |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "# List comprehensions are a nice way to write compact loops.\n", |  | ||||||
|     "# Make sure you understand this as it is very common in Python.\n", |  | ||||||
|     "\n", |  | ||||||
|     "a = list(range(10))\n", |     "a = list(range(10))\n", | ||||||
|     "print(a)\n", |     "print(a)\n", | ||||||
|     "b = [i for i in a if not i % 2]\n", |     "b = [i for i in a if not i % 2]\n", | ||||||
| @ -503,7 +646,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "### 8. Error Messages\n", |     "### 8. Error Messages\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -513,7 +660,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "def do_something(a, b): \n", |     "def do_something(a, b): \n", | ||||||
| @ -524,7 +675,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "## The Scientific Python Ecosystem\n", |     "## The Scientific Python Ecosystem\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -539,7 +694,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "### 9. NumPy\n", |     "### 9. NumPy\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -549,7 +708,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "import numpy as np\n", |     "import numpy as np\n", | ||||||
| @ -571,7 +734,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "### 10. SciPy\n", |     "### 10. SciPy\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -581,7 +748,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "from scipy.interpolate import interp1d\n", |     "from scipy.interpolate import interp1d\n", | ||||||
| @ -595,7 +766,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "### 11. Matplotlib\n", |     "### 11. Matplotlib\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -605,7 +780,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "import matplotlib.pyplot as plt\n", |     "import matplotlib.pyplot as plt\n", | ||||||
| @ -619,7 +798,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "slide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "## Exercises\n", |     "## Exercises\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -637,7 +820,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "import matplotlib.pyplot as plt\n", |     "import matplotlib.pyplot as plt\n", | ||||||
| @ -652,7 +839,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "#### 99 Bottles of Beer\n", |     "#### 99 Bottles of Beer\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -674,7 +865,12 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "scrolled": true, | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "print(\"99 bottles of beer on the wall, 99 bottles of beer.\")\n", |     "print(\"99 bottles of beer on the wall, 99 bottles of beer.\")\n", | ||||||
| @ -684,7 +880,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "#### Ceasar Cipher\n", |     "#### Ceasar Cipher\n", | ||||||
|     "\n", |     "\n", | ||||||
| @ -714,7 +914,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "sentence = \"Pnrfne pvcure? V zhpu cersre Pnrfne fnynq!\"\n", |     "sentence = \"Pnrfne pvcure? V zhpu cersre Pnrfne fnynq!\"\n", | ||||||
| @ -739,7 +943,11 @@ | |||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|    "cell_type": "markdown", |    "cell_type": "markdown", | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "subslide" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "source": [ |    "source": [ | ||||||
|     "### Encoder ###\n", |     "### Encoder ###\n", | ||||||
|     "Idea: Iterrate over all letters of a sentence and find the key (k) which contains the letter as value (v) in the code dictionary" |     "Idea: Iterrate over all letters of a sentence and find the key (k) which contains the letter as value (v) in the code dictionary" | ||||||
| @ -748,7 +956,11 @@ | |||||||
|   { |   { | ||||||
|    "cell_type": "code", |    "cell_type": "code", | ||||||
|    "execution_count": null, |    "execution_count": null, | ||||||
|    "metadata": {}, |    "metadata": { | ||||||
|  |     "slideshow": { | ||||||
|  |      "slide_type": "fragment" | ||||||
|  |     } | ||||||
|  |    }, | ||||||
|    "outputs": [], |    "outputs": [], | ||||||
|    "source": [ |    "source": [ | ||||||
|     "sentence = \"Geophysics with Python is fun!\"\n", |     "sentence = \"Geophysics with Python is fun!\"\n", | ||||||
| @ -763,16 +975,10 @@ | |||||||
|     "\n", |     "\n", | ||||||
|     "print(result)" |     "print(result)" | ||||||
|    ] |    ] | ||||||
|   }, |  | ||||||
|   { |  | ||||||
|    "cell_type": "code", |  | ||||||
|    "execution_count": null, |  | ||||||
|    "metadata": {}, |  | ||||||
|    "outputs": [], |  | ||||||
|    "source": [] |  | ||||||
|   } |   } | ||||||
|  ], |  ], | ||||||
|  "metadata": { |  "metadata": { | ||||||
|  |   "celltoolbar": "Slideshow", | ||||||
|   "kernelspec": { |   "kernelspec": { | ||||||
|    "display_name": "Python 3", |    "display_name": "Python 3", | ||||||
|    "language": "python", |    "language": "python", | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user