Python. Справочник обзор книги

Доброго времени суток, господа питонисты. Мы продолжаем рассматривать книги для изучения Python. Сегодня мы делаем обзор не совсем обычного учебника, как, например, «Изучаем Python», а справочника.

Издательство O’Reilly уже давно зарекомендовало себя в кругах программистов. И книга «Python. Справочник» не станет исключением из правил, хоть и не является учебником. Приступим!

Об авторах

  • Алекс Мартелли — компьютерный инженер из Италии, член сообщества Python Software Foundation. С 2005 года работает в Google. Успел поработать еще в нескольких крупных компаниях, но популярность среди программистов приобрел как раз из-за большого вклада в Python.
  • Анна Мартелли Рейвенскрофт — опытный спикер и коуч. Ее сфера деятельности охватывает обширный круг начиная программированием и заканчивая фитнесом. Анна является активным вкладчиком в Open Source.
  • Стив Холден — инженер сетей, программист на Python и просто хороший человек. Его заинтересованность в программировании и проектировании сетей и привела к написанию этого справочника.

Содержание

Эта книга не содержит упражнений, а также не позиционирует себя как учебник. Однако, если вы уже немного разбираетесь в Python или хотите перейти на Python с другого языка программирования — этот справочник станет идеальным помощником.

Итак, пройдемся по оглавлению:

Часть 1. Начало работы с Python.

  • Глава 1. Введение в Python — эта глава описывает некоторые характеристики самого языка, а завершается установкой Python на компьютер.
  • Глава 2. Интерпретатор Python — здесь вы рассмотрите параметры командной строки Python. Вам покажут, как использовать и запускать программы на Python, а также проведут небольшой экскурс по некоторым IDE и текстовым редакторам, подходящим для программирования на Python.

Часть 2. Ядро и встроенные объекты Python

  • Глава 3. Язык программирования Python — вам покажут встроенные типы данных, синтаксис языка, работу функций и основные выражения.
  • Глава 4. Объектно-ориентированный Python — тут всё просто: вы рассмотрите принципы ООП, применяемые в Python.
  • Глава 5. Исключения — вы научитесь правильно использовать исключения, а не просто оборачивать код в try-else. Также вы научитесь протоколировать события.
  • Глава 6. Модули — авторы покажут, как группировать код Python в модули и пакеты. Вы научитесь правильно импортировать и устанавливать пакеты. А вишенкой на торте станет использование виртуальных сред, которым многие пренебрегают.
  • Глава 7. Встроенные объекты и модули стандартной библиотеки — в этой главе обсуждаются стандартные модули, такие как math, random и другие подобные им. А также затрагиваются основные встроенные типы данных.
  • Глава 8. Строки и байты — здесь вы узнаете о возможностях использования строк Юникода, байтовых строк и литералов.
  • Глава 9. Регулярные выражения — «Если у вас есть проблема – используйте регулярные выражения! Тогда у вас будет две проблемы». Здесь авторы помогают избежать исхода этой шутливой фразы.

Часть 3. Библиотека Python и модули расширения

  • Глава 10. Работа с файлами и текстом — здесь обсуждается работа с вводом-выводом текста и записи его в файлы, особенности работы в зависимости от платформы. Также затронуты вопросы локализации и интернационализации.
  • Глава 11. Базы данных и постоянное хранение — SQL и всё, что с ним связано, на примере SQLite.
  • Глава 12. Работа со значениями данных и времени — здесь вы разберете модуль time и некоторые сторонние библиотеки для работы со временем.
  • Глава 13. Управление процессом выполнения — тема, которую часто не дают новичкам. Рассмотрена сборка мусора, а также выполнение динамического кода.
  • Глава 14. Потоки и процессы — в обычных условиях Python работает в однопоточном режиме. Но для тяжелых вычислений иногда гораздо эффективнее применять многопоточниый режим. Именно это и обсуждается в текущей главе.
  • Глава 15. Математические вычисления — в этой главе вы рассмотрите всё, что связано с математикой. Встроенный модуль math и некоторые сторонние модули. Дроби и комплексные числа — всё это будет обсуждаться в этой главе.
  • Глава 16. Тестирование, отладка и оптимизация кода — вы узнаете о встроенных средствах тестирования, таких как unittest, doctest, pdb и других подобных им. А также рассмотрена оптимизация кода.

Часть 4. Сетевое и веб-программирование

  • Глава 17. Основы работы с сетями — в этой главе вы начнете изучать сетки и сокеты, рассмотрите SSL и TLS.
  • Глава 18. Асинхронные архитекторы — вашим другом на предстоящую главу станет модуль asyncio, который предназначен для асинхронного программирования.
  • Глава 19. Модули для работы с клиентскими сетевыми протоколами — протоколы POP3 и SMTP и библиотеки для работы с ними помогут разобраться в этой теме.
  • Глава 20. Работа с протоколом HTTP — вы рассмотрите WSGI сервер и некоторые веб-фреймворки Python.
  • Глава 21. Электронная почта, MIME и другие сетевые кодировки — продолжение главы 19, и пакет email. Вы сможете отправлять электронные письма при помощи Python. Круто, правда?
  • Глава 22. Структурированный текст: HTML — вы научитесь парсить текст при помощи пакета beautifulsoup4 и работать с пакетом jinja2.
  • Глава 23. Структурированный текст: XML — вы рассмотрите язык разметки XML и модуль ElementTree.

Часть 5. Расширение, распространение, миграция v2/v3

  • Глава 24. Модули расширения и внедрение классического Python в другие программы — придется повозиться с языком Си. Будут рассмотрены концепции увеличения функционала Python при помощи C-расширений и подробно рассмотрена основная реализация Python под названием СPython.
  • Глава 25. Распространение расширений и программ — здесь вы увидите всё, что нужно для работы с пакетом setuptools. Научитесь распространять свои пакеты и создавать для них установщики.
  • Глава 26. Переход с версии 2.х на версию 3.х и сосуществование различных версий — здесь всё понятно из названия. Последняя глава рассказывает о совместимости и переходе между версиями.

Этот справочник содержит без малого 900 страниц, а его базы хватит для того, чтобы считать себя настоящим программистом на Python. Главное — практиковать полученные знания.

Подводим итоги

Справочник по языку Python станет отличным помощником (не учителем) в изучении языка как для тех, кто немного знаком с языком, так и для переходящих на него с какой-нибудь Java или C++. Материал изложен доступным языком и максимально полно. Да, придется потратить некоторое время на изучение всей книги, но оно действительно того стоит.