{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"![](ChemE_logo.png \"ChemE Logo\")\n",
"\n",
"# Easy Python\n",
"by [Tony Saad](www.tonysaad.net)
\n",
"Assistant Professor of [Chemical Engineering](www.che.utah.edu)
\n",
"[University of Utah](www.utah.edu)\n",
"\n",
"\n",
"Please press the right arrow on your keyboard to proceed."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"This is an easy guide for learning Python. In my opinion, you don't need more than this guide to get started with Python. Once you get familiar with the syntax you can dig deeper on your own."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"In fact, my attitude towards programming consists of the following two steps:\n",
"1. Articulate what you want to accomplish (e.g. `I need to sort this array`)\n",
"2. google it! (e.g. `how to sort an array in Python?`)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"As an engineer, programming languages are fundamental tools in my arsenal to tackle research problems. But they are only a means to an end. Therefore, I am happy to learn programming by mimicking what other professional programmers and software developers do. That's why google is your best friend."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"A key reference used for this guide is: Numerical Methods in Engineering with Python 3 by Jaan Kiusalaas."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Python: Anyone Can Code!"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "-"
}
},
"source": [
"![anyone can code](anyonecancode.png)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Python is a modern programming language that is very easy to use. Python promotes productivity and a clear focus on accomplishing the tasks at hand."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"In an age of extreme technology and unsurpassed information exchange, it is unacceptable for a modern engineer to **NOT** know a programming language. Python stands among the easiest and most enjoyable programming languages out there."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"If there's ever an example of why someone needs to learn programming, here it is:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"image/jpeg": "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MnCVQ7yOSAvBU7WJ/SJcG9ua5nvAaXNyOU8hR4pNRirBFOzKg8PrIacPxdJt1EfFfLjVx5nVYbo6a2+HWUOZUgj+0x/AsR8joKseE7QYzD4cYWze7uwJhFS1PiYsZuZO8MkmZc6abACjo6Ojp7UNR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFHR0dHRRR0dHR0UUdHR0dFFf/Z\n",
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from IPython.display import YouTubeVideo\n",
"YouTubeVideo('2o4Mk_CPqRk',width=600, height=300)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "-"
}
},
"source": [
"Back in the 60s, when our nation needed it the most... It was programming that saved the day! (Thanks to Dr. Sean Smith for the suggestion to include a clip from the movie Hidden Figures)"
]
},
{
"cell_type": "code",
"execution_count": 88,
"metadata": {
"slideshow": {
"slide_type": "skip"
}
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 88,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from IPython.display import IFrame\n",
"IFrame('https://trinket.io/embed/python3/f144398a16',width=\"100%\",height=300)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Here's why you should learn Python:\n",
"1. Because your future will likely depend on it. Programming job trends rank python among the [top](https://www.indeed.com/jobtrends/q-%22C++%22-q-Matlab-q-Python.html). Moreover, coding Dojo places python [Numero Uno](http://www.codingdojo.com/blog/our-approach-to-curriculum/).\n",
"2. Python is **FREE**!\n",
"3. It is very easy to get started programming with Python\n",
"5. Python is very forgiving\n",
"6. There is significant community support around Python\n",
"7. You can even use Python in a web browser!"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Obtaining Python: (Can't you just Google it?)\n",
"My favorite way of obtaining python is to download the Anaconda distribution: http://www.anaconda.com. Once you install it, Python mysteriously resides on your computer."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"## Executing Python Code\n",
"There are a few ways you can run Python:\n",
"1. Write your code in a text file with the extension **`py`**. Then from the terminal type **`python myPythonCode.py`**\n",
"2. Use one of the editors that ship with python. Anaconda ships with `Spyder`. Another famous editor is called `PyCharm` . Using these editors (actually Integrated Development Environments, IDEs), you can write code and execute it on the spot.\n",
"3. Use **`Jupyter Notebook`**. This my favorite approach as it allows you to write Python code from within your browser and mix it with text and equation. Simply open up a terminal (command prompt on windows) and type **`jupyter notebook`**."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here's a Markdown cheat sheet - the language used to write text in Jupyter Notebooks."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"For more information on jupyter notebooks, please see this guide by Prof. James Sutherland."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Core Python\n",
"Python has a bunch of key core functionality including the ability to define variables, strings, lists and other types. Let's get started:"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Variables\n",
"Variables, just like any programming language, can be declared and assigned *on the spot*"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"33\n"
]
}
],
"source": [
"myVar = 33 # my var is an integer in this case\n",
"print(myVar) # this will print the value of myVar"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"99.0\n"
]
}
],
"source": [
"b = 3.0 * myVar # b is now floating point variable\n",
"print(b)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"Note that Python automatically detects the data type of a variable. This is called dynamic typing."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Strings\n",
"Strings are a special type of variable that represent text. Simply use single (or double) quotations to define a string variable."
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"This is my first string variable.\n"
]
}
],
"source": [
"str1 = 'This is my first string variable.'\n",
"print(str1)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"this is also another string\n"
]
}
],
"source": [
"str2 = \"this is also another string\"\n",
"print(str2)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"You can concatenate strings together:"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"This is my first string variable.this is also another string\n"
]
}
],
"source": [
"str3 = str1 + str2\n",
"print(str3)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"and you can add extra strings in between"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"This is my first string variable. this is also another string.\n"
]
}
],
"source": [
"str4 = str1 + \" \" + str2 + \".\"\n",
"print(str4)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Strings represent an **immutable** list of characters - that is, you *cannot* assign values of individual characters - otherwise, you will get an error."
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"ename": "TypeError",
"evalue": "'str' 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)",
"\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mstr4\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'b'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mTypeError\u001b[0m: 'str' object does not support item assignment"
]
}
],
"source": [
"str4[2]='b'"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"But you can certainly loop through a string:"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"s\n",
"t\n",
"r\n",
"i\n",
"n\n",
"g\n"
]
}
],
"source": [
"newstr = 'string'\n",
"for val in newstr: # you will learn about this kind of loop later\n",
" print(val)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Tuples"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"A tuple is an **immutable** sequence of **arbitrary** objects separated by commas and enclosed in parentheses."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"a=(1,'b',2)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"You can access items in a tuple"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2\n"
]
}
],
"source": [
"print(a[2])"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"but cannot modify the contents because they are immutable"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"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)",
"\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0ma\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m3\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m2.0\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mTypeError\u001b[0m: 'tuple' object does not support item assignment"
]
}
],
"source": [
"a[3]=2.0"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Lists"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"Lists are a like tuples but are **mutable**. They are defined using square brackets with items separated by a comma."
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1, 2, 3, 'b']\n"
]
}
],
"source": [
"myList = [1,2,3,'b']\n",
"print(myList)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"You can modify items in a list"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1, 2, 3, 'a']\n"
]
}
],
"source": [
"myList[3]='a'\n",
"print(myList)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"You can append items to a list"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1, 2, 3, 'a', 43]\n"
]
}
],
"source": [
"myList.append(43)\n",
"print(myList)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"You can also insert items in a list at a specified location"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1, 2, 3, 'inserted item', 'a', 43]\n"
]
}
],
"source": [
"myList.insert(3,'inserted item')\n",
"print(myList)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"You can create a list of lists as well"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[1, 2, 3], [5, 7, 8], [17, 0, 9]]\n"
]
}
],
"source": [
"b = [[1,2,3],\n",
" [5,7,8],\n",
" [17,0,9]]\n",
"print(b)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"You can create an empty list with: x = []
and then you can append things to it."
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1, 'apple']\n"
]
}
],
"source": [
"x =[]\n",
"x.append(1)\n",
"x.append('apple')\n",
"print(x)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"For scientific computing applications, it is recommended to use numpy arrays instead of lists. We will look at [numpy](#The-Almighty-numpy) arrays a little bit later."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### WARNING!\n",
"If `b` is a list, then the assignment `a = b` does **NOT** create a copy of `b`. Instead, `a` **AND** `b` both point to the same data. So if you change `a`, `b` will also change. and vice versa."
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"b = [1, 3, 5]\n",
"a = [1, 3, 1.11]\n",
"b is now also changed to: [1, 3, 1.11]\n"
]
}
],
"source": [
"b=[1,3,5] # create a list called b\n",
"print(\"b = \", b) # b should be [1,3,5]\n",
"a = b # a is [1,3,5]\n",
"a[2]=1.11 # a is [1,3,1.11] BUT THIS ALSO CHANGES b!\n",
"print(\"a = \", a)\n",
"print(\"b is now also changed to: \", b) # b is [1,3,1.11]"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"If you want to make a copy, you should use: `a = b.copy()`"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"b = [1, 3, 5]\n",
"a = [1, 3, 1.11]\n",
"b remains unchanged: [1, 3, 5]\n"
]
}
],
"source": [
"b=[1,3,5] # create a list called b\n",
"print(\"b = \", b) # b should be [1,3,5]\n",
"a = b.copy() # a is [1,3,5]\n",
"a[2]=1.11 # a is [1,3,1.11] BUT THIS ALSO CHANGES b!\n",
"print(\"a = \", a)\n",
"print(\"b remains unchanged: \", b) # b is [1,3,1.11]"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Displaying Variables"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"You can display variables simply by typing them"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/plain": [
"[1, 2, 3, 'inserted item', 'a', 43]"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"myList"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"or by using print
"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1, 2, 3, 'inserted item', 'a', 43]\n"
]
}
],
"source": [
"print(myList)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"You can also format things using print
"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"This is my list: [1, 2, 3, 'inserted item', 'a', 43]\n"
]
}
],
"source": [
"print('This is my list:', myList)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Arithmetic Operators\n",
"Python supports basic math operators. You can use those on almost ANYTHING in python!"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"| Operation | Symbol |\n",
"| ------------- |:-------------:|\n",
"| Addition | + |\n",
"| Subtraction | - |\n",
"| Multiplication | * |\n",
"| Division | / |\n",
"| Exponentiation | \\*\\* |\n",
"| Modulus | % |\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"You can also use augmented assignements\n",
"\n",
"| Operation | Meaning |\n",
"| ------------- |:-------------:|\n",
"| a += b | a = a + b |\n",
"| a -= b | a = a -b |\n",
"| a \\*= b | a = a\\*b |\n",
"| a /=b | a = a/b |\n",
"| a \\*\\*= b | a = a\\*\\*b |\n",
"| a %= b | a = a % b |\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Comparison Operators\n",
"Python also supports all basic comparison operators. These work on almost everything in Python - but make sure you understand their meaning!"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"| Symbol | Meaning |\n",
"| ------------- |:-------------:|\n",
"| < | Less than |\n",
"| > | Greater than |\n",
"| <= | Less than or equal to |\n",
"| >= | Greater than or equal to |\n",
"| == | Equal to |\n",
"| != | Not equal to |\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"When different data types are compared to each other, they are first converted, when possible, to a common type and then compared. Such is the case for example when comparing an integer and a float."
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"False\n"
]
}
],
"source": [
"a = 2 # a is an integer\n",
"b = 2.1 # b is a float\n",
"print(a>b) # converts both numbers to a float"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"When a conversion to a common type is not possible, then in general, objects are considered to be unequal."
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"False\n"
]
}
],
"source": [
"a=2\n",
"b='2.1'\n",
"print(a==b)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Conditionals (If statements)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"You can use if statements to analyze the condition of a variable during runtime. An if statements looks like:\n",
"```python\n",
"if condition:\n",
" do something\n",
"elif condition2:\n",
" do something else\n",
"else:\n",
" all other cases\n",
"```\n",
"Don't forget indentation! For the **condition**, You can use any of the comparison operators introduced earlier."
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"positive\n"
]
}
],
"source": [
"a = 1\n",
"if a < 0.0:\n",
" print ('negative')\n",
"elif a > 0.0:\n",
" print ('positive')\n",
"else:\n",
" print('neither negative nor positive')"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Loops\n",
"Loops are cool."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### While Loops"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"A While loop consists of the following:\n",
"```python\n",
"while condition:\n",
" do something cool\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"n = 0\n",
"n = 1\n",
"n = 2\n"
]
}
],
"source": [
"nMax = 3\n",
"n = 0\n",
"while n < nMax:\n",
" print ('n =', n)\n",
" n += 1"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Sometimes, you need to do something special if the condition of the while loop is not satisfied. You can use an else statement in that case:\n",
"```python\n",
"while condition:\n",
" do something as long as condition is true\n",
"else:\n",
" do something else when condition is no longer true\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"n = 0\n",
"n = 1\n",
"n = 2\n",
"Done!\n"
]
}
],
"source": [
"nMax = 3\n",
"n = 0\n",
"while n < nMax:\n",
" print ('n =', n)\n",
" n += 1\n",
"else:\n",
" print(\"Done!\")"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### For Loops"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"One of the greatest features of python is that almost everything is iterable! If you have a collection of things, you can simply use a for loop to go through the list: \n",
"\n",
"```python \n",
"for item in sequence:\n",
" do something\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1\n",
"4\n",
"5\n",
"6\n",
"7\n"
]
}
],
"source": [
"a = [1,4,5,6,7]\n",
"for val in a: # iterate or loop through the items in a\n",
" print(val)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"The other way to do this is to loop through a range using the range
function:"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"i a[i]\n",
"------\n",
"0 1\n",
"1 4\n",
"2 5\n"
]
}
],
"source": [
"print('i a[i]')\n",
"print('------')\n",
"for i in range(0,3):\n",
" print (i,' ', a[i])"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"The `range` function returns a sequence of numbers: \n",
"\n",
"```python\n",
"range(nMin, nMax) = [nMin, nMin + 1, nMin + 2, ..., nMax -1]\n",
"```"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"As usual, you can break
and continue
for loops."
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1\n",
"3\n",
"45\n",
"found value - exiting loop.\n"
]
}
],
"source": [
"# example of breaking a for loop\n",
"seq = [1,3,45,2,4]\n",
"for val in seq:\n",
" if (val == 2):\n",
" print('found value - exiting loop.')\n",
" break\n",
" print(val)\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98]\n"
]
}
],
"source": [
"# example of continue in a for loop\n",
"x = [] # Create an empty list\n",
"for i in range(1,100):\n",
" if i%7 != 0: continue # If not divisible by 7, skip rest of loop\n",
" x.append(i) # Append i to the list\n",
"print(x)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Functions"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"Functions in Python are defined using the following convention:\n",
"```python\n",
"def function(arg1, arg2, ...):\n",
" statements\n",
" return return_values\n",
"```\n",
"where `arg1, arg2, ...` are the function arguments. Arguments can be any Python objects and even other functions. They can be given defaults values which makes using the argument optional."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Let's now define a function that computes first and second derivatives of any differentiable function. Here's what our function looks like:"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"def derivatives(f,x,h=0.0001): # h has a default value, \n",
" df =(f(x+h) - f(x-h))/(2.0*h) # compute first dervative\n",
" ddf =(f(x+h) - 2.0*f(x) + f(x-h))/h**2 # compute second derivative\n",
" return df,ddf # return first & second derivatives"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"Let's now call `derivatives` on the inverse tangent function (`atan`)"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0.3717472125930321 -0.3593095820875192\n"
]
}
],
"source": [
"from math import atan # we need to import atan from the math module - you'll learn this later\n",
"df, ddf = derivatives(atan, 1.3) # call the derivatives function on atan at the point x = 1.3\n",
"print(df,ddf) # print the results"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Functions can be documented using docstring."
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"def my_function(x,y,a):\n",
" \"\"\"The function's documentation goes here. you can add whatever description you like.\n",
" Arguments:\n",
" x: axial position\n",
" y: vertical position\n",
" a: acceleration\n",
" Todo:\n",
" * add error checking\n",
" \"\"\"\n",
" return x*y + a"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Your documentation will look something like this:\n",
"![](python_doc_example.png)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Functions can be defined inline in a python file (just like we did here), or, they can be placed in **`modules`**."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Modules"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"Modules consist of a collection of functions and placed together in a module for convenience. Functions in a module can be accessed by *importing* them from the module\n",
"```python\n",
"from module_name import function\n",
"```"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"Modules are simply Python files (.py). The module name is the same as the filename."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Accessing Functions in a Module"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"There are three ways to access functions in a module:"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"```python \n",
"from module_name import *```\n",
"Which loas ALL functions in the module. While this is certainly allowed, it is (1) wasteful since Python will load all functions definitions into memory, and (2) it can lead to ambiguity if other modules have similar function defitions. For example, the `sine` function is defined in the modules: `math`, `cmath`, and `numpy`."
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1.1051709180756477\n"
]
}
],
"source": [
"from math import *\n",
"print(exp(0.1))"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"```python\n",
"from module_name import function1, function2,...\n",
"```\n",
"Imports only the specified functions from the module. This is certainly safer but may lead to conflicts if you're not careful"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-0.5306054094646787\n"
]
}
],
"source": [
"from math import exp, log, sinh\n",
"x = 0.23\n",
"print(exp(x**2) + log(x) - sinh(x/2))"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"```python\n",
"import module_name\n",
"```\n",
"Imports the module which allows you to access function definitions in the module using: `module_name.function1` etc...\n",
"This is by far the least ambiguous path."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"You can also nickname a module for easy access\n",
"```python \n",
"import module_name as m\n",
"```\n",
"Then, you'd access functions in `module_name` using: `m.function1`."
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/plain": [
"(-1+1.2246467991473532e-16j)"
]
},
"execution_count": 43,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import cmath as cm # cmath library supports complex numbers\n",
"Ï€ = cm.pi # define pi\n",
"x = π*1j # complex number\n",
"cm.exp(x) # e^(iπ) = -1"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"The contents of a module can be listed using:\n",
"```python \n",
"dir(module_name)```"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/plain": [
"['__doc__',\n",
" '__file__',\n",
" '__loader__',\n",
" '__name__',\n",
" '__package__',\n",
" '__spec__',\n",
" 'acos',\n",
" 'acosh',\n",
" 'asin',\n",
" 'asinh',\n",
" 'atan',\n",
" 'atan2',\n",
" 'atanh',\n",
" 'ceil',\n",
" 'copysign',\n",
" 'cos',\n",
" 'cosh',\n",
" 'degrees',\n",
" 'e',\n",
" 'erf',\n",
" 'erfc',\n",
" 'exp',\n",
" 'expm1',\n",
" 'fabs',\n",
" 'factorial',\n",
" 'floor',\n",
" 'fmod',\n",
" 'frexp',\n",
" 'fsum',\n",
" 'gamma',\n",
" 'gcd',\n",
" 'hypot',\n",
" 'inf',\n",
" 'isclose',\n",
" 'isfinite',\n",
" 'isinf',\n",
" 'isnan',\n",
" 'ldexp',\n",
" 'lgamma',\n",
" 'log',\n",
" 'log10',\n",
" 'log1p',\n",
" 'log2',\n",
" 'modf',\n",
" 'nan',\n",
" 'pi',\n",
" 'pow',\n",
" 'radians',\n",
" 'sin',\n",
" 'sinh',\n",
" 'sqrt',\n",
" 'tan',\n",
" 'tanh',\n",
" 'tau',\n",
" 'trunc']"
]
},
"execution_count": 44,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import math\n",
"dir(math)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Another module that you may find useful is the `cmath` module. It supports the same functions as the `math` module but allows the use of complex numbers for function arguments."
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/plain": [
"['__doc__',\n",
" '__file__',\n",
" '__loader__',\n",
" '__name__',\n",
" '__package__',\n",
" '__spec__',\n",
" 'acos',\n",
" 'acosh',\n",
" 'asin',\n",
" 'asinh',\n",
" 'atan',\n",
" 'atanh',\n",
" 'cos',\n",
" 'cosh',\n",
" 'e',\n",
" 'exp',\n",
" 'inf',\n",
" 'infj',\n",
" 'isclose',\n",
" 'isfinite',\n",
" 'isinf',\n",
" 'isnan',\n",
" 'log',\n",
" 'log10',\n",
" 'nan',\n",
" 'nanj',\n",
" 'phase',\n",
" 'pi',\n",
" 'polar',\n",
" 'rect',\n",
" 'sin',\n",
" 'sinh',\n",
" 'sqrt',\n",
" 'tan',\n",
" 'tanh',\n",
" 'tau']"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import cmath\n",
"dir(cmath)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# The Almighty numpy"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"Numpy is one of the most famous python libraries for scientific computing. `num` stands for numerical and `py` stands for python (yeah, Python programmers are obsessed with using `py` in naming their projects). Numpy is the standard library for numerical computing with python. It provides powerful array functionality that beats python lists. Let's look at some numpy features."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Numpy Arrays"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"Numpy arrays are similar to Python lists but can be manipulated in fantastic ways by other functions in the numpy library. They are by far the standard in python-based scientific computing. See [here for more details](https://docs.scipy.org/doc/numpy/reference/generated/numpy.array.html)."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"A numpy array can be created several ways. It can be created from a list"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[2 4]\n",
" [2 3]]\n"
]
}
],
"source": [
"import numpy as np # don't forget to import numpy\n",
"myList = [[2,4],[2,3]] #\n",
"a = np.array(myList)\n",
"print(a)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"It can also be created from a tuple"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1 2 3]\n"
]
}
],
"source": [
"myTuple = (1,2,3)\n",
"a = np.array(myTuple)\n",
"print(a)"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true,
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"You can initialize empty numpy arrays:"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[-2.00000000e+000 3.11107857e+231]\n",
" [-2.00000000e+000 2.82464218e-309]]\n"
]
}
],
"source": [
"a = np.empty((2,2)) # 2x2 array\n",
"print(a)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"source": [
"You can also create arrays of zeros or ones:"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[0. 0. 0.]\n",
" [0. 0. 0.]\n",
" [0. 0. 0.]]\n",
"[[1. 1.]\n",
" [1. 1.]]\n"
]
}
],
"source": [
"a = np.zeros((3,3))\n",
"b = np.ones((2,2))\n",
"print(a)\n",
"print(b)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"One useful numpy function is `arange`. It works like the standard `range` function, but returns an array instead of a sequence. It looks like this:\n",
"```python\n",
"arange(start, stop, step)\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[0 3 6 9]\n"
]
}
],
"source": [
"a = np.arange(0,10,3) # go from 0 to 10 in steps of 3\n",
"print(a)"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-2\n",
"0\n",
"2\n"
]
}
],
"source": [
"for i in np.arange(-2,3,2): # use arange to loop\n",
" print(i)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Another useful numpy functionality is `linspace`. With `linspace`, you can create an array of equally spaced real numbers. This is particularly useful if you're defining a grid. Here's an example"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[-1. -0.77777778 -0.55555556 -0.33333333 -0.11111111 0.11111111\n",
" 0.33333333 0.55555556 0.77777778 1. ]\n"
]
}
],
"source": [
"x = np.linspace(-1,1,10)\n",
"print(x)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"you can use linspace to compute (and plot) a function"
]
},
{
"cell_type": "code",
"execution_count": 53,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/plain": [
"[]"
]
},
"execution_count": 53,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"