Skip to content

Instantly share code, notes, and snippets.

@mbklein
Last active May 9, 2024 15:10
Show Gist options
  • Save mbklein/cf1435e5cbaf6f006c52c9bbd6210a6d to your computer and use it in GitHub Desktop.
Save mbklein/cf1435e5cbaf6f006c52c9bbd6210a6d to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "JyG45Qk3qQLS"
},
"source": [
"# Cells\n",
"A notebook is a list of cells. Cells contain either explanatory text or executable code and its output. Click a cell to select it."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "KR921S_OQSHG"
},
"source": [
"## Code cells\n",
"Below is a **code cell**. Once the toolbar button indicates CONNECTED, click in the cell to select it and execute the contents in the following ways:\n",
"\n",
"* Click the **Play icon** in the left gutter of the cell;\n",
"* Type **Cmd/Ctrl+Enter** to run the cell in place;\n",
"* Type **Shift+Enter** to run the cell and move focus to the next cell (adding one if none exists); or\n",
"* Type **Alt+Enter** to run the cell and insert a new code cell immediately below it.\n",
"\n",
"There are additional options for running some or all cells in the **Runtime** menu.\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"cellView": "both",
"colab": {
"height": 35
},
"id": "WUtu4316QSHL",
"outputId": "67bdf0c3-d76f-4226-fc34-a2f2d0eba60b"
},
"outputs": [
{
"data": {
"text/plain": [
"10"
]
},
"execution_count": 0,
"metadata": {
"tags": []
},
"output_type": "execute_result"
}
],
"source": [
"a = 10\n",
"a"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Id6tDF1HQSHD"
},
"source": [
"## Text cells\n",
"This is a **text cell**. You can **double-click** to edit this cell. Text cells\n",
"use markdown syntax. To learn more, see our [markdown\n",
"guide](/notebooks/markdown_guide.ipynb).\n",
"\n",
"You can also add math to text cells using [LaTeX](http://www.latex-project.org/)\n",
"to be rendered by [MathJax](https://www.mathjax.org). Just place the statement\n",
"within a pair of **\\$** signs. For example `$\\sqrt{3x-1}+(1+x)^2$` becomes\n",
"$\\sqrt{3x-1}+(1+x)^2.$\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "7bqjkGKwQSHW"
},
"source": [
"## Adding and moving cells\n",
"You can add new cells by using the **+ CODE** and **+ TEXT** buttons that show when you hover between cells. These buttons are also in the toolbar above the notebook where they can be used to add a cell below the currently selected cell.\n",
"\n",
"You can move a cell by selecting it and clicking **Cell Up** or **Cell Down** in the top toolbar.\n",
"\n",
"Consecutive cells can be selected by \"lasso selection\" by dragging from outside one cell and through the group. Non-adjacent cells can be selected concurrently by clicking one and then holding down Ctrl while clicking another. Similarly, using Shift instead of Ctrl will select all intermediate cells."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "GOwlZRXEQSHZ"
},
"source": [
"# Working with python\n",
"Colaboratory is built on top of [Jupyter Notebook](https://jupyter.org/). Below are some examples of convenience functions provided."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "RVuqWUXPQSHa"
},
"source": [
"Long running python processes can be interrupted. Run the following cell and select **Runtime -> Interrupt execution** (*hotkey: Cmd/Ctrl-M I*) to stop execution."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"cellView": "both",
"colab": {
"height": 244
},
"id": "d-S-3nYLQSHb",
"outputId": "38d534fc-8b61-4f9f-d731-74b23aadb5bc"
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Sleeping\n"
]
},
{
"ename": "KeyboardInterrupt",
"evalue": "ignored",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)",
"\u001b[1;32m<ipython-input-3-626f81edbca4>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mtime\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mprint\u001b[0m \u001b[1;34m\"Sleeping\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[0mtime\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msleep\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m30\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;31m# sleep for a while; interrupt me!\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;32mprint\u001b[0m \u001b[1;34m\"Done Sleeping\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;31mKeyboardInterrupt\u001b[0m: "
]
}
],
"source": [
"import time\n",
"print(\"Sleeping\")\n",
"time.sleep(30) # sleep for a while; interrupt me!\n",
"print(\"Done Sleeping\")"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Wej_mEyXQSHc"
},
"source": [
"## System aliases\n",
"\n",
"Jupyter includes shortcuts for common operations, such as ls:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"cellView": "both",
"colab": {
"height": 323
},
"id": "5OCYEvK5QSHf",
"outputId": "2ee8ae66-72ed-425c-e20b-bc5ac307ef3e"
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\u001b[0m\u001b[01;36march\u001b[0m@ \u001b[01;32mdmesg\u001b[0m* \u001b[01;32mls\u001b[0m* \u001b[01;32mpwd\u001b[0m* \u001b[01;32mtrue\u001b[0m*\r\n",
"\u001b[01;36mawk\u001b[0m@ \u001b[01;32mdnsdomainname\u001b[0m* \u001b[01;32mlsmod\u001b[0m* \u001b[01;32mreadlink\u001b[0m* \u001b[01;32mumount\u001b[0m*\r\n",
"\u001b[01;36mbasename\u001b[0m@ \u001b[01;32mdomainname\u001b[0m* \u001b[01;32mmail\u001b[0m* \u001b[01;36mred\u001b[0m@ \u001b[01;32muname\u001b[0m*\r\n",
"\u001b[01;32mbash\u001b[0m* \u001b[01;32mecho\u001b[0m* \u001b[01;32mmkdir\u001b[0m* \u001b[01;32mrm\u001b[0m* \u001b[01;32muncompress\u001b[0m*\r\n",
"\u001b[01;36mbunzip2\u001b[0m@ \u001b[01;36med\u001b[0m@ \u001b[01;32mmknod\u001b[0m* \u001b[01;32mrmdir\u001b[0m* \u001b[01;32musleep\u001b[0m*\r\n",
"\u001b[01;32mbusybox\u001b[0m* \u001b[01;32megrep\u001b[0m* \u001b[01;32mmktemp\u001b[0m* \u001b[01;32mrun-parts\u001b[0m* \u001b[01;32mver\u001b[0m*\r\n",
"\u001b[01;36mbzip2\u001b[0m@ \u001b[01;32mfalse\u001b[0m* \u001b[01;32mmore\u001b[0m* \u001b[01;32msed\u001b[0m* \u001b[01;32mwhich\u001b[0m*\r\n",
"\u001b[01;32mcat\u001b[0m* \u001b[01;32mfgrep\u001b[0m* \u001b[01;32mmount\u001b[0m* \u001b[01;36msh\u001b[0m@ \u001b[01;34mwrapper_checkpoints\u001b[0m/\r\n",
"\u001b[01;32mchgrp\u001b[0m* \u001b[01;36mgawk\u001b[0m@ \u001b[01;32mmountpoint\u001b[0m* \u001b[01;32msleep\u001b[0m* \u001b[01;32mzcat\u001b[0m*\r\n",
"\u001b[01;32mchmod\u001b[0m* \u001b[01;32mgrep\u001b[0m* \u001b[01;32mmv\u001b[0m* \u001b[01;36msort\u001b[0m@ \u001b[01;32mzcmp\u001b[0m*\r\n",
"\u001b[01;32mchown\u001b[0m* \u001b[01;32mgunzip\u001b[0m* \u001b[01;32mnc\u001b[0m* \u001b[01;32mstty\u001b[0m* \u001b[01;32mzdiff\u001b[0m*\r\n",
"\u001b[01;32mcp\u001b[0m* \u001b[01;32mgzexe\u001b[0m* \u001b[01;36mnetcat\u001b[0m@ \u001b[01;32msu\u001b[0m* \u001b[01;32mzegrep\u001b[0m*\r\n",
"\u001b[01;32mcpio\u001b[0m* \u001b[01;32mgzip\u001b[0m* \u001b[01;32mnetstat\u001b[0m* \u001b[01;32msync\u001b[0m* \u001b[01;32mzfgrep\u001b[0m*\r\n",
"\u001b[01;36mcsh\u001b[0m@ \u001b[01;32mhostname\u001b[0m* \u001b[01;36mnice\u001b[0m@ \u001b[01;32mtailf\u001b[0m* \u001b[01;32mzforce\u001b[0m*\r\n",
"\u001b[01;36mcut\u001b[0m@ \u001b[01;36migawk\u001b[0m@ \u001b[01;36mpidof\u001b[0m@ \u001b[01;32mtar\u001b[0m* \u001b[01;32mzgrep\u001b[0m*\r\n",
"\u001b[01;32mdate\u001b[0m* \u001b[01;32mkill\u001b[0m* \u001b[01;32mping\u001b[0m* \u001b[01;36mtcsh\u001b[0m@ \u001b[01;32mzless\u001b[0m*\r\n",
"\u001b[01;32mdd\u001b[0m* \u001b[01;32mln\u001b[0m* \u001b[01;32mping6\u001b[0m* \u001b[01;32mtempfile\u001b[0m* \u001b[01;32mzmore\u001b[0m*\r\n",
"\u001b[01;32mdf\u001b[0m* \u001b[01;32mlogin\u001b[0m* \u001b[01;32mps\u001b[0m* \u001b[01;32mtouch\u001b[0m* \u001b[01;32mznew\u001b[0m*\r\n"
]
}
],
"source": [
"!ls /bin"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "y8Da6JWKQSHh"
},
"source": [
"That `!ls` probably generated a large output. You can select the cell and clear the output by either:\n",
"\n",
"1. Clicking on the clear output button (x) in the toolbar above the cell; or\n",
"2. Right clicking the left gutter of the output area and selecting \"Clear output\" from the context menu.\n",
"\n",
"Execute any other process using `!` with string interpolation from python variables, and note the result can be assigned to a variable:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"cellView": "both",
"id": "zqGrv0blQSHj",
"outputId": "584f105e-52a5-475e-dded-00caddc8fce8"
},
"outputs": [
{
"data": {
"text/plain": [
"['Colaboratory is great!',\n",
" 'Colaboratory is great!',\n",
" 'Colaboratory is great!',\n",
" 'Colaboratory is great!']"
]
},
"execution_count": 0,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# In https://github.com/ipython/ipython/pull/10545, single quote strings are ignored\n",
"message = 'Colaboratory is great!'\n",
"foo = !unset message && echo -e '{message}\\n{message}\\n'$message\"\\n$message\"\n",
"foo"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "qM4myQGfQboQ"
},
"source": [
"## Magics\n",
"Colaboratory shares the notion of magics from Jupyter. There are shorthand annotations that change how a cell's text is executed. To learn more, see [Jupyter's magics page](http://nbviewer.jupyter.org/github/ipython/ipython/blob/1.x/examples/notebooks/Cell%20Magics.ipynb).\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"cellView": "both",
"colab": {
"height": 38
},
"id": "odfM-_GxWbCy",
"outputId": "3f059816-dc25-4670-ca46-e2ee50a9490e"
},
"outputs": [
{
"data": {
"text/html": [
"<marquee style='width: 30%; color: blue;'><b>Whee!</b></marquee>"
],
"text/plain": [
"<IPython.core.display.HTML at 0x558e1385fc10>"
]
},
"metadata": {
"tags": []
},
"output_type": "display_data"
}
],
"source": [
"%%html\n",
"<marquee style='width: 30%; color: blue;'><b>Whee!</b></marquee>"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"height": 221
},
"id": "_YrTcK7k22Fp",
"outputId": "bb3a69dd-49b7-4a6c-966a-64f77007a525"
},
"outputs": [
{
"data": {
"text/html": [
"<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 450 400\" width=\"200\" height=\"200\">\n",
" <rect x=\"80\" y=\"60\" width=\"250\" height=\"250\" rx=\"20\" style=\"fill:red; stroke:black; fill-opacity:0.7\" />\n",
" <rect x=\"180\" y=\"110\" width=\"250\" height=\"250\" rx=\"40\" style=\"fill:blue; stroke:black; fill-opacity:0.5;\" />\n",
"</svg>"
],
"text/plain": [
"<IPython.core.display.HTML at 0x5636f4dd54d0>"
]
},
"metadata": {
"tags": []
},
"output_type": "display_data"
}
],
"source": [
"%%html\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 450 400\" width=\"200\" height=\"200\">\n",
" <rect x=\"80\" y=\"60\" width=\"250\" height=\"250\" rx=\"20\" style=\"fill:red; stroke:black; fill-opacity:0.7\" />\n",
" <rect x=\"180\" y=\"110\" width=\"250\" height=\"250\" rx=\"40\" style=\"fill:blue; stroke:black; fill-opacity:0.5;\" />\n",
"</svg>"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "d4L9TOP9QSHn"
},
"source": [
"## Automatic completions and exploring code\n",
"\n",
"Colab provides automatic completions to explore attributes of Python objects, as well as to quickly view documentation strings. As an example, first run the following cell to import the [`numpy`](http://www.numpy.org) module."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"cellView": "both",
"id": "Q0JKWcmtQSHp"
},
"outputs": [],
"source": [
"import numpy as np"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "1M890-bXeyYp"
},
"source": [
"If you now insert your cursor after `np` and press **Period**(`.`), you will see the list of available completions within the `np` module. Completions can be opened again by using **Ctrl+Space**."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"cellView": "both",
"id": "j6QRIfUHQSHq"
},
"outputs": [],
"source": [
"np"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "g6MfomFhQSHs"
},
"source": [
"If you type an open parenthesis after any function or class in the module, you will see a pop-up of its documentation string:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"cellView": "both",
"id": "SD0XnrVhQSHt"
},
"outputs": [],
"source": [
"np.ndarray"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "GVIVDgdaRjPQ"
},
"source": [
"The documentation can be opened again using **Ctrl+Shift+Space** or you can view the documentation for method by mouse hovering over the method name.\n",
"\n",
"When hovering over the method name the `Open in tab` link will open the documentation in a persistent pane. The `View source` link will navigate to the source code for the method."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "TYTBdJXxfqiJ"
},
"source": [
"## Exception Formatting"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "4bqAVK-aQSHx"
},
"source": [
"Exceptions are formatted nicely in Colab outputs:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"cellView": "both",
"id": "CrJf1PEmQSHx",
"outputId": "a8c7a413-a1e6-49f1-c7b5-58986eff5047"
},
"outputs": [
{
"ename": "ZeroDivisionError",
"evalue": "",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mZeroDivisionError\u001b[0m Traceback (most recent call last)",
"\u001b[1;32m<ipython-input-14-dc39888fd1d2>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[0mx\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;36m1\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[0my\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;36m4\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[0mz\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0my\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m-\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[1;31mZeroDivisionError\u001b[0m: integer division or modulo by zero"
]
}
],
"source": [
"x = 1\n",
"y = 4\n",
"z = y/(1-x)"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "7cRnhv_7N4Pa"
},
"source": [
"## Rich, interactive outputs\n",
"Until now all of the generated outputs have been text, but they can be more interesting, like the chart below."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"height": 371
},
"id": "JVXnTqyE9RET",
"outputId": "a20709c6-9773-49e9-bc49-1e8468ea990b"
},
"outputs": [
{
"data": {
"image/png": "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\npbThOhkAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x5636f516d150>"
]
},
"metadata": {
"tags": []
},
"output_type": "display_data"
}
],
"source": [
"import numpy as np\n",
"from matplotlib import pyplot as plt\n",
"\n",
"ys = 200 + np.random.randn(100)\n",
"x = [x for x in range(len(ys))]\n",
"\n",
"plt.plot(x, ys, '-')\n",
"plt.fill_between(x, ys, 195, where=(ys > 195), facecolor='g', alpha=0.6)\n",
"\n",
"plt.title(\"Fills and Alpha Example\")\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "aro-UJgUQSH1"
},
"source": [
"# Integration with Drive\n",
"\n",
"Colaboratory is integrated with Google Drive. It allows you to share, comment, and collaborate on the same document with multiple people:\n",
"\n",
"* The **SHARE** button (top-right of the toolbar) allows you to share the notebook and control permissions set on it.\n",
"\n",
"* **File->Make a Copy** creates a copy of the notebook in Drive.\n",
"\n",
"* **File->Save** saves the File to Drive. **File->Save and checkpoint** pins the version so it doesn't get deleted from the revision history.\n",
"\n",
"* **File->Revision history** shows the notebook's revision history."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "4hfV37gxpP_c"
},
"source": [
"## Commenting on a cell\n",
"You can comment on a Colaboratory notebook like you would on a Google Document. Comments are attached to cells, and are displayed next to the cell they refer to. If you have **comment-only** permissions, you will see a comment button on the top right of the cell when you hover over it.\n",
"\n",
"If you have edit or comment permissions you can comment on a cell in one of three ways:\n",
"\n",
"1. Select a cell and click the comment button in the toolbar above the top-right corner of the cell.\n",
"1. Right click a text cell and select **Add a comment** from the context menu.\n",
"3. Use the shortcut **Ctrl+Shift+M** to add a comment to the currently selected cell.\n",
"\n",
"You can resolve and reply to comments, and you can target comments to specific collaborators by typing *+[email address]* (e.g., `[email protected]`). Addressed collaborators will be emailed.\n",
"\n",
"The Comment button in the top-right corner of the page shows all comments attached to the notebook."
]
}
],
"metadata": {
"colab": {
"name": "Overview of Colaboratory Features",
"toc_visible": true,
"provenance": []
},
"kernelspec": {
"display_name": "Python 3",
"name": "python3"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
matplotlib
numpy
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment