1. Ускоренный курс Python
Он делает то, что написано на банке, и делает это очень хорошо. Книга начинается с пошагового обзора основных элементов и структур данных Python, работы с переменными, строками, числами, списками и кортежами, а также описания того, как вы работаете с каждым из них.
Затем, если рассматриваются операторы и логические тесты, следует погружение в словари.
После этого книга охватывает пользовательский ввод, а также циклы, функции, классы и обработку файлов, а также тестирование и отладку кода.
Это только первая половина книги! Во второй половине вы работаете над тремя крупными проектами, создавая умные и забавные приложения.
Первый проект — это игра Alien Invasion, по сути, Space Invaders, разработанная с использованием пакета pygame. Вы проектируете корабль (используя классы), затем программируете его пилотирование и заставляете его стрелять пулями. Затем вы создаете несколько классов инопланетян, заставляете инопланетный флот двигаться и позволяете их сбивать. Наконец, вы добавляете табло и список рекордов для завершения игры.
После этого следующий проект охватывает визуализацию данных с помощью matplotlib, случайные блуждания, броски игральных костей и немного статистического анализа, создание графиков и диаграмм с помощью пакета pygal. Вы узнаете, как загружать данные в различных форматах, импортировать их в Python и визуализировать результаты, а также как взаимодействовать с веб-API, извлекая и визуализируя данные из GitHub и HackerNews.
Третий проект проведет вас через создание полного веб-приложения с использованием Django для настройки журнала обучения, чтобы отслеживать, что изучают пользователи. В нем рассказывается, как установить Django, настроить проект, разработать свои модели, создать интерфейс администратора, настроить учетные записи пользователей, управлять контролем доступа для каждого пользователя, стилизовать все ваше приложение с помощью Bootstrap, а затем, наконец, развернуть его на Heroku. .
Эта книга хорошо написана и хорошо организована. В ней представлено большое количество полезных упражнений, а также три сложных и занимательных проекта, составляющих вторую половину книги. (Отзыв Дэвида Шлезингера.)
2. Изобретите свои собственные компьютерные игры с помощью Python
Если вам нравятся игры или у вас даже есть собственная идея игры, эта книга станет идеальной книгой для изучения Python. В этой книге вы изучите основы программирования и Python с помощью прикладных упражнений, ориентированных на создание классических игр.
Начиная с введения в оболочку Python и цикла REPL, за которым следует базовое «Hello, World!» script, вы сразу же погружаетесь в создание простой игры на угадывание чисел, охватывающей случайные числа, управление потоком, преобразование типов и логические данные. После этого пишется небольшой сценарий-анекдот, иллюстрирующий использование операторов печати, escape-символов и основных операций со строками.
Следующий проект — это текстовая игра по исследованию пещер, Dragon's Realm, которая знакомит вас с блок-схемами и функциями, объясняет, как определить ваши собственные аргументы и параметры, а также объясняет логические операторы, глобальную и локальную область видимости и функцию sleep(). функция.
После краткого ознакомления с тем, как отлаживать ваш код Python, вы затем реализуете игру «Виселица», используя иллюстрации ASCII, одновременно изучая списки, оператор in, методы, операторы elif, модуль random и несколько строковых методов.
Затем вы расширяете игру Hangman новыми функциями, такими как списки слов и уровни сложности, а также изучаете словари, пары ключ-значение и присвоение нескольким переменным.
Ваш следующий проект — игра «Крестики-нолики», в которой представлены некоторые высокоуровневые концепции искусственного интеллекта, показано, как сократить вычисление в условных выражениях, а также объясняется значение None, а также некоторые другие способы доступа к спискам.
Ваше путешествие по остальной части книги происходит в том же духе. Вы изучите вложенные циклы при создании игры на угадывание чисел в стиле Mastermind, декартовы координаты для игры Sonar Hunt, криптографию для написания шифра Цезаря и искусственный интеллект при реализации Reversi (также известного как Othello), в котором может играть компьютер. против себя.
После всего этого следует погружение в использование графики для ваших игр с PyGame: вы узнаете, как анимировать графику, управлять обнаружением столкновений, а также использовать звуки, изображения и спрайты. Чтобы объединить все эти концепции, книга поможет вам создать графическую игру с уклонением от препятствий.
Эта книга хорошо сделана, и тот факт, что каждый проект представляет собой самодостаточную единицу, делает ее привлекательной и доступной. Если вы любите учиться на практике, то эта книга вам понравится.
3. Python Tricks: шведский стол с потрясающими функциями Python
Эта книга иллюстрирует ценные малоизвестные функции Python и лучшие практики, написанные, чтобы помочь вам глубже понять Python. В каждом из 43 подразделов представлена отдельная концепция, называемая трюком Python, с обсуждением и простыми для понимания примерами кода, иллюстрирующими, как вы можете воспользоваться этой концепцией.
Содержание книги разбито на следующие разделы:
- Шаблоны для более чистого Python
- Эффективные функции
- Классы и ООП
- Общие структуры данных в Python
- Зацикливание и итерация
- Словарные хитрости Питонские методы повышения производительности Как указано на обложке, содержание организовано по принципу «шведский стол», где каждый подраздел представляет собой самостоятельную тему с кратким введением, примерами, обсуждением и списком основных выводов. Таким образом, вы можете свободно переходить к наиболее привлекательным разделам.
В дополнение к книге мне особенно понравились 12 бонусных видео, которые доступны при покупке этой книги в виде электронной книги. Их средняя продолжительность составляет 11 минут, что идеально подходит для просмотра во время обеда. Каждое видео иллюстрирует отдельную концепцию с использованием четких и лаконичных примеров кода, которые легко воспроизвести. Несмотря на то, что некоторые видеоролики освещали знакомые концепции, они все же давали интересные сведения, не затягивая.