М97 Изучаем Python: программирование игр, визуализация данных, веб-приложения



Pdf көрінісі
бет282/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   278   279   280   281   282   283   284   285   ...   334
Байланысты:
Изучаем Python

391
УПРАЖНЕНИЯ
17.1. Другие языки: 
измените вызов API в программе 
python_repos .py
так, чтобы на диа-
грамме отображались самые популярные проекты на других языках. Попробуйте такие 
языки, как JavaScript, Ruby, C, Java, Perl, Haskell и Go.
17.2. Активные обсуждения:
на основании данных из 
hn_submissions .py
постройте столбцо-
вую диаграмму самых активных обсуждений, проходящих на Hacker News. Высота каждого 
столбца должна соответствовать количеству комментариев к каждой статье. Метка столбца 
должна включать заголовок статьи, а сам столбец должен служить ссылкой на страницу 
обсуждения этой публикации.
17.3. Тестирование python_repos.py:
в python_repos.py для проверки успешности вызова 
API выводится значение 
status_code
. Напишите программу 
test_python_repos .py
, которая 
использует модуль 
unittest
для проверки того, что значение 
status_code
равно 200. При-
думайте другие условия, которые могут проверяться при тестировании, — например, что 
количество возвращаемых элементов совпадает с ожидаемым, а общее количество репози-
ториев превышает некоторый порог.
17.4. Дальнейшие исследования:
ознакомьтесь с документацией Plotly и GitHub API 
(или Hacker News API). Используйте полученную информацию для настройки стилево-
го оформления уже построенных диаграмм или загрузите другие данные и постройте соб-
ственные визуализации.
Итоги
В этой главе вы узнали, как использовать API для написания программ, автома-
тически собирающих необходимые данные и использующих полученную инфор-
мацию для создания визуализации. Мы использовали GitHub API для получения 
информации о самых популярных проектах Python на GitHub, а также в общих 
чертах рассмотрели API Hacker News. Вы узнали, как с помощью пакета 
Requests
автоматически выдать вызов API к GitHub и как обработать результаты этого вы-
зова. Также были описаны некоторые средства конфигурации Plotly, позволяющие 
выполнить дополнительную настройку внешнего вида создаваемых диаграмм.
В последнем проекте мы используем Django для построения веб-приложения, 
которое станет нашим последним проектом в этой книге.


Проект 3 
Веб-приложения


18
Знакомство с Django
Современные веб-сайты в действительности представляют собой многофункцио-
нальные приложения, достаточно близкие к полноценным приложениям для 
настольных систем. Python содержит мощный инструментарий для построения 
веб-приложений, который называется Django. Django представляет собой 
веб-
фреймворк
— набор средств, упрощающих построение интерактивных веб-сайтов. 
В этой главе вы научитесь использовать Django (
http://djangoproject .com/
) для по-
строения проекта Learning Log — сетевой журнальной системы для отслеживания 
информации, полученной вами по определенной теме.
Мы напишем спецификацию для этого проекта, а затем определим модели для 
данных, с которыми будет работать приложение. Мы воспользуемся администра-
тивной системой Django для ввода некоторых начальных данных, а затем научимся 
писать представления и шаблоны, на базе которых Django будет строить страницы 
нашего сайта.
Django может реагировать на запросы страниц, упрощает чтение и запись информа-
ции в базы данных, управление пользователями и многие другие операции. В гла-
вах 19 и 20 мы доработаем проект Learning Log, а затем развернем его на сервере, 
чтобы вы (и ваши друзья) могли использовать его.
Подготовка к созданию проекта
В начале работы над проектом необходимо описать проект в 
спецификации
. Затем 
вы создадите виртуальную среду для построения проекта.
Написание спецификации
В полной спецификации описываются цели проекта, его функциональность, 
а также внешний вид и интерфейс пользователя. Как и любой хороший проект 
или бизнес-план, спецификация должна сосредоточиться на самых важных аспек-
тах и обеспечивать планомерную разработку проекта. Здесь мы не будем писать 
полную спецификацию, а сформулируем несколько четких целей, которые будут 
задавать направление процесса разработки. Вот как выглядит спецификация:


394

Достарыңызбен бөлісу:
1   ...   278   279   280   281   282   283   284   285   ...   334




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет