#!/usr/bin/env python # coding: utf-8 # # Основы программирования в Python # # *Алла Тамбовцева, НИУ ВШЭ* # ## Знакомство с Jupyter Notebook # Jupyter Notebook чем-то похож на текстовый редактор: есть меню, панель инструментов и поле для работы (ячейки). Ячейки могут содержать как код, так и текст (неразмеченный и размеченный). Комментарии в ячейках с кодом должны начинаться со знака `#`. # # Пример ячейки с кодом: # In[1]: A = 3 # создаем переменную A и присваиваем ей значение 3 B = 0.2 # комментарий 1 # комментарий 2 print(A, B) # выводим на экран значения переменных A и B # По умолчанию тип ячейки *Code*, это можно увидеть на панели под меню. Чтобы изменить тип ячейки нужно нажать на стрелочку вниз и выбрать нужный вариант. Всего вариантов четыре: *Code*, *Markdown*, *RawNBConvert* и *Heading*. # # * *Code*: ячейка с кодом Python # * *Markdown*: ячейка с размеченным текстом, язык разметки Markdown # * *RawNBConvert*: неразмеченный (сырой) текст, без курсива/полужирного шрифта # * *Heading*: устарел, раньше использовался для заголовков, сейчас их нужно создавать в режиме *Markdown* # Пример ячейки с неразмеченным текстом: This is the raw text. # Пример ячейки с размеченным текстом (язык разметки Markdown, почитать про него можно [здесь](http://jupyter-notebook.readthedocs.io/en/latest/examples/Notebook/Working%20With%20Markdown%20Cells.html) и [здесь](http://nestacms.com/docs/creating-content/markdown-cheat-sheet)) — см. ниже. # ### Что можно делать с помощью Markdown? # Выделять заголовки разных уровней: # # # Заголовок 1 # ## Заголовок 2 # ### Заголовок 3 # # Выделять части текста с помощью *курсива* или **полужирного начертания**. Или просто зачеркивать. # # Добавлять списки разного вида. Ненумерованный список: # # * пункт 1 # * пункт 2 # # Нумерованный список: # # 1. Во-первых, ... # 2. Во-вторых, ... # # Для тех, кто знаком с LaTeX: можно красиво оформлять формулы, используя синтаксис, принятый в $\LaTeX{}$ (наличие установленного на компьютере LaTeX не требуется, текст компилируется в самом Jupyter Notebook): # # $P(A|B) = \dfrac{P(A \cap B)}{P(B)}$ # Еще можно добавлять ссылки. Либо текст ссылки и саму ссылку: # [Jupyter](http://jupyter.org/) # Либо просто ссылку как есть: # # И, конечно, можно добавлять картинки! # Так: # # ![title](test.png) # Или так (синтаксис, как в html, кто знаком): # Test picture # *Примечание:* часть с *alt* нужна для того, чтобы в случае, если картинки с таким названием нет, выводился какой-то альтернативный текст вместо нее. Например: # Test picture # ### Горячие клавиши # В Jupyter Notebook есть свои горячие клавиши, которые позволяют добавлять или удалять ячейки, менять их тип и так далее. Чтобы работать в режиме горячих клавиш, нужно выйти из редактирования ячейки (нажать на *Esc*), а потом набрать нужную комбинацию клавиш. Чтобы вернуться в режим редактирования ячейки, можно кликнуть на нее два раза или, выбрав ее, нажать *Enter*. Все полезные комбинации клавиш можно найти в меню (*Help - Keyboard Shortcuts*) или нажав *Esc*, а потом *H* или *P*. # Другие интересные вещи про Jupyter Notebook (и другие среды) можно почитать в обзоре — файл *Jupyter and Others.ipynb*. # ### Если потерялись # И наконец: как найти, куда Jupyter сохраняет ноутбуки — файлы с расширением `.ipynb`. Можно импортировать библиотеку *os* и узнать текущую рабочую папку (*current working directory*) — в ней будут лежать ноутбуки. # In[5]: import os os.getcwd()