#!/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*. # ### Что можно делать с помощью Markdown? # Выделять заголовки разных уровней. # # Заголовок 1 # ## Заголовок 2 # ### Заголовок 3 # Исходная разметка Markdown: # # ``` # # Заголовок 1 # ## Заголовок 2 # ### Заголовок 3 # ``` # Выделять части текста с помощью *курсива* или **полужирного начертания**. Или просто зачеркивать. Исходная разметка: # ``` # Выделять части текста с помощью *курсива* или **полужирного начертания**. # # Или просто зачеркивать. # ``` # Добавлять списки разного вида. Ненумерованный список: # # * пункт 1 # * пункт 2 # # Нумерованный список: # # 1. Во-первых, ... # 2. Во-вторых, ... # Исходная разметка для списков: # # ``` # Ненумерованный список: # # * пункт 1 # * пункт 2 # # Нумерованный список: # # 1. Во-первых, ... # 2. Во-вторых, ... # ``` # Для тех, кто знаком с $\LaTeX{}$: можно красиво оформлять формулы, используя синтаксис, принятый в $\LaTeX{}$ (наличие установленного на компьютере LaTeX не требуется, текст компилируется в самом Jupyter Notebook): # # $$ # A \cup B # $$ # # $$ # y = \beta_0 + \beta_1 \cdot x # $$ # # $$ # \frac{1}{(x+y)^2} # $$ # # Код LaTeX: # # ``` # $$ # A \cup B # $$ # # $$ # y = \beta_0 + \beta_1 \cdot x # $$ # # $$ # \frac{1}{(x+y)^2} # $$ # ``` # Еще можно добавлять ссылки. Текст ссылки и саму ссылку: # [Jupyter](http://jupyter.org/) # # Исходник: # # ``` # [Jupyter](http://jupyter.org/) # ``` # Либо просто ссылку как есть: # # # Исходник: # # ``` # # ``` # И, конечно, можно добавлять картинки! # Так: # # ![title](test.png) # # Исходник: # # ``` # ![title](test.png) # ``` # Или так (синтаксис, как в html, кто знаком): # Test picture # # Исходник: # # ``` # Test picture # ``` # *Примечание:* часть с *alt* нужна для того, чтобы в случае, если картинки с таким названием нет, выводился какой-то альтернативный текст вместо неё. Например: # Test picture # ### Горячие клавиши # В Jupyter Notebook есть свои горячие клавиши, которые позволяют добавлять или удалять ячейки, менять их тип и так далее. Чтобы работать в режиме горячих клавиш, нужно выйти из редактирования ячейки (нажать на *Esc*), а потом набрать нужную комбинацию клавиш. Чтобы вернуться в режим редактирования ячейки, можно кликнуть на нее два раза или, выбрав её, нажать *Enter*. Все полезные комбинации клавиш можно найти в меню (*Help - Keyboard Shortcuts*) или нажав *Esc*, а потом *H* или *P*. # ### Если потерялись # И наконец: как найти, куда Jupyter сохраняет ноутбуки — файлы с расширением `.ipynb`. Можно импортировать библиотеку *os* и узнать текущую рабочую папку (*current working directory*) — в ней будут лежать ноутбуки. # In[5]: import os os.getcwd()