Программирование для дата-журналистики: различия между версиями

Материал из MathINFO
Перейти к навигации Перейти к поиску
(Новая страница: «Это страничка курсов «Введение в программирование» и «Программирование» на магистерск...»)
 
 
Строка 112: Строка 112:
 
|}
 
|}
 
=== Как использовать ===
 
=== Как использовать ===
[[Файл:Nbviewer download icon.png|thumb|right|Чтобы скачать ipynb-файл, нужно кликнуть на иконку в красном кружке правой кнопкой и выбрать «сохранить файл как» или аналогичный пункт меню]]
 
 
Мы выкладываем материалы курса в виде ipynb-файлов. По ссылкам выше вы можете просмотреть эти файлы. Если вы хотите открыть этот файл у себя, то вам необходимо скачать его (нажав на иконку в правом верхнем углу страницы с лекцией) и положить в каталог, из которого Jupyter открывает ноутбуки: например, воспользовавшись кнопкой ''Upload'' в самом Jupyter (на экране со списком файлов). Также этот каталог можно найти по строчке <code>Serving notebooks from local directory: /home/user/IPython</code>, появляющейся в чёрненьком окошке при запуске Jupyter; здесь <code>/home/user/IPython</code> — искомый путь.
 
Мы выкладываем материалы курса в виде ipynb-файлов. По ссылкам выше вы можете просмотреть эти файлы. Если вы хотите открыть этот файл у себя, то вам необходимо скачать его (нажав на иконку в правом верхнем углу страницы с лекцией) и положить в каталог, из которого Jupyter открывает ноутбуки: например, воспользовавшись кнопкой ''Upload'' в самом Jupyter (на экране со списком файлов). Также этот каталог можно найти по строчке <code>Serving notebooks from local directory: /home/user/IPython</code>, появляющейся в чёрненьком окошке при запуске Jupyter; здесь <code>/home/user/IPython</code> — искомый путь.
 
[[Файл:Jupyter-Upload.png|thumb|right|Чтобы загрузить файл в IPython Notebook, можно нажать на кнопку ''Upload'']]
 
  
 
=== Основы веб-разработки ===
 
=== Основы веб-разработки ===
Строка 123: Строка 120:
 
* [https://github.com/getify/You-Dont-Know-JS You Don't Know JavaScript]: серия книг для тех, кто хочет разобраться, как оно действительно там всё устроено.
 
* [https://github.com/getify/You-Dont-Know-JS You Don't Know JavaScript]: серия книг для тех, кто хочет разобраться, как оно действительно там всё устроено.
 
* [http://output.jsbin.com/kiyija cows_n_bulls]: игра, которую мы написали на занятии 18 января.
 
* [http://output.jsbin.com/kiyija cows_n_bulls]: игра, которую мы написали на занятии 18 января.
** [[/ДЗ№9]]
+
** [http://math-info.hse.ru/2016-17/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B4%D0%BB%D1%8F_%D0%B4%D0%B0%D1%82%D0%B0-%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B8/%D0%94%D0%97%E2%84%969 ДЗ№9]
 
* [https://github.com/ischurov/data-mos-ru-api-flask data-mos-ru-api-flask]: сайт на базе [http://flask.pocoo.org Flask], использующий API [http://data.mos.ru data.mos.ru], который мы написали на занятии 25 января.
 
* [https://github.com/ischurov/data-mos-ru-api-flask data-mos-ru-api-flask]: сайт на базе [http://flask.pocoo.org Flask], использующий API [http://data.mos.ru data.mos.ru], который мы написали на занятии 25 января.
* [[/dj-projects.wikisociety.info]]
+
* [http://math-info.hse.ru/2016-17/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B4%D0%BB%D1%8F_%D0%B4%D0%B0%D1%82%D0%B0-%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B8/dj-projects.wikisociety.info dj-projects.wikisociety.info]
** [[/ДЗ№10]]
+
** [http://math-info.hse.ru/2016-17/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B4%D0%BB%D1%8F_%D0%B4%D0%B0%D1%82%D0%B0-%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B8/%D0%94%D0%97%E2%84%9610 ДЗ№10]
 
* [https://github.com/ischurov/dj-prog/blob/master/gdp_urban_lowinc.csv gdp_urban_lowinc]
 
* [https://github.com/ischurov/dj-prog/blob/master/gdp_urban_lowinc.csv gdp_urban_lowinc]
 
* [https://bl.ocks.org/mbostock/b2fee5dae98555cf78c9e4c5074b87c3 histogram in d3]
 
* [https://bl.ocks.org/mbostock/b2fee5dae98555cf78c9e4c5074b87c3 histogram in d3]
  
 
== Итоговые проекты ==
 
== Итоговые проекты ==
* [[Итоговые проекты/Правила]]
+
* [http://math-info.hse.ru/2016-17/%D0%98%D1%82%D0%BE%D0%B3%D0%BE%D0%B2%D1%8B%D0%B5_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D1%8B/%D0%9F%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0 Итоговые проекты/Правила]
 
* [http://nbviewer.jupyter.org/github/ischurov/dj-prog/blob/master/DJ_Exam/DJ_Exam.ipynb Экзамен]
 
* [http://nbviewer.jupyter.org/github/ischurov/dj-prog/blob/master/DJ_Exam/DJ_Exam.ipynb Экзамен]
  
 
== См. также ==
 
== См. также ==
* [[2015-16:Программирование на языке Python для сбора и анализа данных]]
+
* [http://math-info.hse.ru/2015-16/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%B0_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5_Python_%D0%B4%D0%BB%D1%8F_%D1%81%D0%B1%D0%BE%D1%80%D0%B0_%D0%B8_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85 2015-16:Программирование на языке Python для сбора и анализа данных]
 
== Примечания ==
 
== Примечания ==
 
<references/>
 
<references/>

Текущая версия на 02:25, 8 февраля 2020

Это страничка курсов «Введение в программирование» и «Программирование» на магистерской программе «Журналистика данных».

Автор курса: Щуров И.В.

Софт

Мы используем Python 3 и оболочку Jupyter (ранее известный как IPython Notebook). Чтобы их установить, проще всего скачать пакет Anaconda. Обратите внимание: вам нужна версия с Python 3.x.

После установки Anaconda у вас появится:

  • Под Windows: в меню «Пуск» пункт «Anaconda», в нём подпункт «IPython Notebook».
  • Под Mac OS X: приложение Anaconda Launcher, в нём пункт ipython-notebook.

После запуска IPython Notebook у вас откроется окно браузера (и лучше пусть это будет не Internet Explorer, под ним IPython Notebook работает с некоторым скриптом, а иногда не работает) со списком файлов. В нём надо выбрать New → Python 3. Откроется новая вкладка браузера, в ней будет запущен пустой notebook, состоящий из отдельных ячеек (cells). В ячейку с кодом можно вписать код и нажать Shift+Enter — он выполнится и вам покажут тут же результат.

Материалы

Основы программирования

неделя тема конспект доп. материалы видео задачи
1 Первое знакомство . ipynb Шаблон:PT: арифметические операции, целые и вещественные числа видео ipynb дедлайн 2016-09-17 23:00:00.
2 Списки и цикл for. ipynb Шаблон:PT: цикл for, списки видео
3 Конструкция if и проверка условий. ipynb Шаблон:PT: split и join, if, while видео ДЗ№2
4 Функции. ipynb Шаблон:PT: функции видео
5 Словари. ipynb Шаблон:PT: словари видео ДЗ№3
6 Продвинутые списки. Немного про строки коварство списков split и join ещё немного про строки Шаблон:PT: вложенные списки, split и join
7 Списковые включения. Сортировка. списковые включения сортировка Cписковые включения[1], О сортировке (англ.) ДЗ№4

Продвинутые возможности Python

неделя тема конспект доп. материалы задачи
1 Форматирование строк и работа с файлами.
  • Шпаргалка по форматированию строк
  • Input and Output: подробно в официальной документации, на английском
ДЗ№5
2 Всякая всячина Чтение CSV-файлов «вручную» и использование функций для структурирования кода Данные для задачи №1.
3 Исключения и классы конспект Errors and Exceptions Classes ДЗ№6
4 Извлечение данных из веб-страниц конспект Оригинальная документация (англ.): requests BeautifulSoup, видео ДЗ№7
5 Работа с открытыми API с помощью XML конспект Документация по API MediaWiki (движка Википедии): основная на английском, на русском, автогенерированная на английском, на русском, видео.
6 JSON и API. Управление браузером в RoboBrowser и Selenium конспект RoboBrowser, неофициальная документация по Python-Selenium (её проще читать, чем официальную), видео

Как использовать

Мы выкладываем материалы курса в виде ipynb-файлов. По ссылкам выше вы можете просмотреть эти файлы. Если вы хотите открыть этот файл у себя, то вам необходимо скачать его (нажав на иконку в правом верхнем углу страницы с лекцией) и положить в каталог, из которого Jupyter открывает ноутбуки: например, воспользовавшись кнопкой Upload в самом Jupyter (на экране со списком файлов). Также этот каталог можно найти по строчке Serving notebooks from local directory: /home/user/IPython, появляющейся в чёрненьком окошке при запуске Jupyter; здесь /home/user/IPython — искомый путь.

Основы веб-разработки

Итоговые проекты

См. также

Примечания

  1. Шаблон:PT использует термин «генераторы списков» вместо «списковые включения»