{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Основы программирования в Python\n", "\n", "*Алла Тамбовцева, НИУ ВШЭ*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Знакомство с Jupyter Notebook" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Jupyter Notebook чем-то похож на текстовый редактор: есть меню, панель инструментов и поле для работы (ячейки). Ячейки могут содержать как код, так и текст (неразмеченный и размеченный). Комментарии в ячейках с кодом должны начинаться со знака `#`. \n", "\n", "Пример ячейки с кодом:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3 0.2\n" ] } ], "source": [ "A = 3 # создаем переменную A и присваиваем ей значение 3\n", "B = 0.2 \n", "\n", "# комментарий 1\n", "# комментарий 2\n", "\n", "print(A, B) # выводим на экран значения переменных A и B" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "По умолчанию тип ячейки *Code*, это можно увидеть на панели под меню. Чтобы изменить тип ячейки нужно нажать на стрелочку вниз и выбрать нужный вариант. Всего вариантов четыре: *Code*, *Markdown*, *RawNBConvert* и *Heading*.\n", "\n", "* *Code*: ячейка с кодом Python\n", "* *Markdown*: ячейка с размеченным текстом, язык разметки Markdown\n", "* *RawNBConvert*: неразмеченный (сырой) текст, без курсива/полужирного шрифта\n", "* *Heading*: устарел, раньше использовался для заголовков, сейчас их нужно создавать в режиме *Markdown*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Пример ячейки с неразмеченным текстом:" ] }, { "cell_type": "raw", "metadata": {}, "source": [ "This is the raw text." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Пример ячейки с размеченным текстом (язык разметки Markdown, почитать про него можно [здесь](http://jupyter-notebook.readthedocs.io/en/latest/examples/Notebook/Working%20With%20Markdown%20Cells.html) и [здесь](http://nestacms.com/docs/creating-content/markdown-cheat-sheet)) — см. ниже." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Что можно делать с помощью Markdown?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Выделять заголовки разных уровней:\n", "\n", "# Заголовок 1\n", "## Заголовок 2\n", "### Заголовок 3\n", "\n", "Выделять части текста с помощью *курсива* или **полужирного начертания**. Или просто зачеркивать.\n", "\n", "Добавлять списки разного вида. Ненумерованный список:\n", "\n", "* пункт 1 \n", "* пункт 2\n", "\n", "Нумерованный список:\n", "\n", "1. Во-первых, ...\n", "2. Во-вторых, ...\n", "\n", "Для тех, кто знаком с LaTeX: можно красиво оформлять формулы, используя синтаксис, принятый в $\\LaTeX{}$ (наличие установленного на компьютере LaTeX не требуется, текст компилируется в самом Jupyter Notebook):\n", "\n", "$P(A|B) = \\dfrac{P(A \\cap B)}{P(B)}$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Еще можно добавлять ссылки. Либо текст ссылки и саму ссылку:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[Jupyter](http://jupyter.org/)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Либо просто ссылку как есть:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "И, конечно, можно добавлять картинки!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Так: \n", " \n", "![title](test.png) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Или так (синтаксис, как в html, кто знаком):" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\"Test" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Примечание:* часть с *alt* нужна для того, чтобы в случае, если картинки с таким названием нет, выводился какой-то альтернативный текст вместо нее. Например:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\"Test" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Горячие клавиши" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "В Jupyter Notebook есть свои горячие клавиши, которые позволяют добавлять или удалять ячейки, менять их тип и так далее. Чтобы работать в режиме горячих клавиш, нужно выйти из редактирования ячейки (нажать на *Esc*), а потом набрать нужную комбинацию клавиш. Чтобы вернуться в режим редактирования ячейки, можно кликнуть на нее два раза или, выбрав ее, нажать *Enter*. Все полезные комбинации клавиш можно найти в меню (*Help - Keyboard Shortcuts*) или нажав *Esc*, а потом *H* или *P*." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Другие интересные вещи про Jupyter Notebook (и другие среды) можно почитать в обзоре — файл *Jupyter and Others.ipynb*." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Если потерялись" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "И наконец: как найти, куда Jupyter сохраняет ноутбуки — файлы с расширением `.ipynb`. Можно импортировать библиотеку *os* и узнать текущую рабочую папку (*current working directory*) — в ней будут лежать ноутбуки." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'/home/oem/github/Py-programming-3/02-04'" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import os\n", "os.getcwd()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 2 }