Мы продолжаем наш нелегкий путь в поисках лучшей книги по Python. И сегодня обзор книги «Python. Экспресс-курс» Наоми Седер.
И первое, что вам нужно знать — это книга не для новичков. Она для тех уже хорошо умеет программировать на других языках и ему нужно быстро освоить Python. Собственно поэтому на обложке и написано Экспресс-Курс или по-английски «The Quick Python Book».
С концепцией разобрались, теперь давайте посмотрим, что тут внутри. Книга содержит 480 страниц и состоит из четырех частей.
Первая — вводная. В ней широкими мазками даются основы языка, чтобы у вас сформировалось общее понимание, что такое Python и его отличие от других языков.
Во вторую часть автор поместила основной материал о Питоне. Он включает знакомство с типами данных: списками, строками, множествами и словарями, а также управляющими конструкциями, вроде условий и циклов.
При этом в книге не просто рассказываются основы синтаксиса, но и приводятся реальные практические примеры использования тех или иных конструкций или структур данных. Так, например, с помощью словарей можно подсчитать количество слов в тексте или можно использовать их в качестве кэша. Да-да Python словари нередко выступают как контейнеры для хранения промежуточных вычислений.
И вообще мне это напомнило книгу Марка Саммерфилда, он также приводил реальные практические примеры использования Python, что конечно добавляет ценности.
Кстати, еще один прием, про который рассказывает автор, это использование словарей в качестве замены конструкций case или switch, которые есть в других языках. То есть если вы пришли в Python из Java или PHP и не встретили для себя знакомых конструкций, то как минимум в этой книге найдете им альтернативы.
Завершается вторая глава функциями, модулями, файлами и исключениями. То есть автор охватила всё самое важное. При этом функции затрагивают лямбда выражения, генераторы и декораторы. А главы про файлы содержат информацию о модулях os, pathlib, pickle, struct и shelve. То есть речь не просто про файлы, а про конкретные инструменты, которые используются в повседневной работе программиста.
И собственно дальше в книге количество этих инструментов начинает только расти.
Погружение в Python библиотеки
В третьей главе Наоми Седер подробно останавливается на классах и ООП. При этом тут ни слова про метаклассы или абстрактные классы, как это было в книге Укус Питона. И это не удивительно, ведь это не ежедневные инструменты разработчика. Зато тут хорошо описаны методы, наследование и свойства. Что действительно нужно.
После классов автор рассказывает про регулярные выражения в Python, а также углубляется в управление объектами и пакетами. Включая установку сторонних библиотек в виртуальные окружения. И опять же — это действительно важные темы. Потому что именно с помощью сторонних библиотек в Python можно решить большую часть задач.
И собственно четвертая глава «Python. Экспресс курс» как раз посвящена решению задач обработке данных. Включая работу с CSV и Excel, а также с сетями с помощью модуля requests. Что позволяет получать по API данные из интернета в разных форматах: JSON, XML и так далее. Кстати как работать с этими форматами Наоми Седер также рассказывает.
Далее идет глава про базы данных, где рассматриваются не только SQLite, но и MySQL и Postgresql, работа с которыми в книге построена через библиотеку SQL алхимия.
Помимо реляционных баз, автор затрагивает NoSQL решения, включая MongoDb, а также Redis.
Последняя глава книги посвящена анализу данных и работе с Pandas. А это довольно популярная библиотека.
Выводы
И в целом, как я уже сказал, книга похожа на «Программирование на Python» Марка Саммерфилда или на Простой Python Билла Любановича. Только у Марка несколько сложнее примеры и есть глава про процессы и потоки. Тут об этом не слова. А книга Любановича больше подходит для web-разработчиков.
У Наоми Седер какой-то центральной темы я не выделил, хотя сама книга мне понравилась и я её рекомендую программистам на других языках. Особенно если у вас действительно немного времени и вам нужно быстро освоить новый язык. Экспресс курс в данном случае полностью оправдывает свое название.