{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Основы программирования в Python\n", "\n", "*Алла Тамбовцева, НИУ ВШЭ*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Домашнее задание №1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Данное домашнее задание посвящено знакомству с интерфейсом Jupyter Notebook. Несмотря на то, что для прикладного программирования и разработки существуют более продвинутые (и более удобные) ресурсы и среды, уметь работать в Jupyter Notebook полезно. Во-первых, он позволяет создавать красивые отчеты по работе с данными, в которых будет содержаться и программный код, и текст, и таблицы с графиками. Во-вторых, знать основы работы в Jupyter полезно, потому что многие курсы по машинному обучению и анализу данных в Python предполагают использование именно этого инструмента. В-третьих, на первых порах работать в Jupyter проще, поскольку он чем-то напоминает текстовый редактор, только с отдельными ячейками, в которых исполняется код.\n", "\n", "Кроме того, в этом домашнем задании предлагается познакомиться со стандартами оформления кода вообще и в Python в частности. Несмотря на то, что в курсе мы не будем обращать особого внимания на оформление (главное, научиться писать код грамотно), лучше сразу учиться делать код читаемым. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание\n", "\n", "1. Прочитать [обзор](https://nbviewer.jupyter.org/github/allatambov/PyProg-2018/blob/master/03-09/coding-style.ipynb) по оформлению кода.\n", "2. Прочитать документацию по стандартам кода в Python – [PEP 8](https://www.python.org/dev/peps/pep-0008/). Если тяжело, см. [неофициальный перевод](https://pythonworld.ru/osnovy/pep-8-rukovodstvo-po-napisaniyu-koda-na-python.html) на русский язык.\n", "3. Создать ipynb-файл с кратким конспектом по прочитанному. Название «конспект» условное, задание творческое, совсем необязательно по пунктам перечислять все положения из PEP 8, можно выбрать несколько наиболее важных фактов или фактов, которые вас удивили, показались контринтуитивными или, напротив, слишком логичными, и поделиться своими впечатлениями.\n", "\n", "Ваш ipynb-файл с конспектом обязательно должен включать разные элементы оформления (язык разметки *Markdown*). Критерии оценивания задания (всего за задание 10 баллов):\n", "\n", "- содержание конспекта (2 балла);\n", "- наличие хотя бы одного заголовка подходящего уровня в файле (1 балл);\n", "- наличие курсива и полужирного шрифта в файле (1 балл);\n", "- наличие корректно оформленной ссылки в файле (1 балл);\n", "- наличие хотя бы одного списка, ненумерованного или нумерованного (1 балл);\n", "- наличие хотя бы одной ячейки с кодом и комментарием к нему (2 балла);\n", "- наличие хотя бы одной картинки в файле (2 балла).\n", "\n", "**Важно:** чтобы проверяющие могли увидеть картинку, её тоже нужно загрузить по ссылке на Dropbox вместе с файлом с заданием. Можно просто загрузить файлы по очереди, а можно всё сразу архивом." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Где ещё почитать про *Markdown* в Jupyter Notebook?**\n", "\n", "- [Cheat Sheet](https://www.markdownguide.org/cheat-sheet)." ] } ], "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.8" } }, "nbformat": 4, "nbformat_minor": 2 }