{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Основы программирования в Python\n", "\n", "*НИУ ВШЭ, Алла Тамбовцева*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Домашнее задание 1\n", "\n", "*Дедлайн: 10 сентября, 23:59*\n", "\n", "*Формат сдачи: файл с расширением `.ipynb` необходимо назвать в соответствии с Вашей фамилией (например, Тамбовцева.ipynb) и загрузить на Dropbox по [ссылке](https://www.dropbox.com/request/Va1gBVywsrhBfj1K6iEb).*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Данное домашнее задание посвящено знакомству с интерфейсом Jupyter Notebook. Несмотря на то, что для прикладного программирования и разработки существуют более продвинутые (и более удобные) ресурсы и среды, уметь работать в Jupyter Notebook полезно. Во-первых, он позволяет создавать красивые отчеты по работе с данными, в которых будет содержаться и программный код, и текст, и таблицы с графиками. Во-вторых, знать основы работы в Jupyter полезно, потому что многие курсы по машинному обучению и анализу данных в Python предполагают использование именно этого инструмента. В-третьих, на первых порах работать в Jupyter проще, поскольку он чем-то напоминает текстовый редактор, только с отдельными ячейками, в которых исполняется код.\n", "\n", "Кроме того, в этом домашнем задании предлагается познакомиться со стандартами оформления кода вообще и в Python в частности. Несмотря на то, что в курсе мы не будем обращать особого внимания на оформление (главное, научиться писать код грамотно), лучше сразу учиться делать код читаемым. \n", "\n", "*Спойлер: оформление кода в последующих домашних заданиях никак не влияет на оценку, но код будет просматриваться и комментироваться, по итогам курса или 1-го модуля самых «аккуратных» программистов ждут бонусы-сюрпризы.*" ] }, { "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/).\n", "3. Создать ipynb-файл с кратким конспектом по прочитанному. Задание творческое, совсем необязательно по пунктам перечислять все положения из PEP 8, можно выбрать несколько наиболее важных фактов или фактов, которые вас удивили, показались контринтуитивными или, напротив, слишком логичными и поделиться своими впечатлениями.\n", "\n", "Ваш ipynb-файл с конспектом обязательно должен включать разные элементы оформления (язык разметки *Markdown*). Критерии оценивания задания (всего за задание 10 баллов):\n", "\n", "- содержание конспекта (3 балла)\n", "- наличие хотя бы одного заголовка подходящего уровня в файле (1 балл)\n", "- наличие курсива и полужирного шрифта в файле (1 балл)\n", "- наличие корректно оформленной ссылки в файле (1 балл)\n", "- наличие хотя бы одного списка, ненумерованного или нумерованного (1 балл)\n", "- наличие хотя бы одной ячейки с кодом и комментарием к нему (2 балла)\n", "- наличие хотя бы одной картинки в файле (1 балл)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Где почитать про *Markdown* в Jupyter Notebook?**\n", "\n", "- лекция [intro-jupyter](https://nbviewer.jupyter.org/github/allatambov/PyProg-2018/blob/master/03-09/intro-jupyter.ipynb), для просмотра исходного кода имеет смысл скачать с [github]().\n", "- обзор [Jupyter and Others](https://nbviewer.jupyter.org/github/allatambov/PyProg-2018/blob/master/03-09/Jupyter%20and%20Others.ipynb)\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.5" } }, "nbformat": 4, "nbformat_minor": 2 }