Код
#статьи

Обзор книги Эла Свейгарта «Автоматизация рутинных задач с помощью Python»

Эта книга поможет освоить Python. А если повезёт, раз и навсегда покончить с рутиной.

 vlada_maestro / shutterstock

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

Подробно объясняется каждый шаг, и есть много информации для “чайников”: как установить, что сделать и где спросить, если что-то не работает. Объём материала почти 600 страниц, освоение займёт приблизительно 35–40 часов.

Это не учебник для будущих кодеров, которые планируют заниматься коммерческим программированием, а руководство по решению конкретных задач и автоматизации рутины. Поэтому в примерах кода есть отступления от правил и best practice в пользу понятности и простоты.

Книга полезна тем, кто:

  • хочет облегчить себе жизнь с помощью Python;
  • не имеет опыта в программировании.

Что понадобится для работы:

  • Компьютер с интернетом.
  • Школьные знания арифметики.
  • Умение пользоваться поиском, скачивать и устанавливать программы.
  • Упорство и вдохновение (шутка — упорства хватит за глаза).

Что в итоге получит читатель:

  • Знание базового Python.
  • Несколько программ для портфолио.
  • Понимание, нравится ли вам программировать.
  • Уважение коллег и домочадцев.

Чем ещё хороша эта книга

  • Вы увидите профессию целиком. Книга предназначена для непрограммистов, но проведёт читателя по настоящему пайплайну разработчика: постановка задачи → поиск решения → написание кода → запуск. Именно так, в общих чертах, работает вся индустрия разработки софта.
  • Вы ощутите себя программистом. Русский перевод сделан с издания 2016 года, поэтому некоторые ссылки уже не работают. Ответы на часть вопросов придётся искать самостоятельно, как настоящему программисту.
  • В книге есть контрольные вопросы. Если вам понравится программировать, они помогут закрепить знания. И вполне вероятно, что попадутся на собеседовании — эйчары не всегда выдумывают их сами. Как в школе: “Решайте обязательно, это будет на контрольной”.

Кстати, ответы на вопросы тоже есть — в конце книги, как и полагается. (Приложение В).

Как читать эту книгу (и не только её)

Заведите тетрадку, документ на компьютере или в облаке — для конспекта. Когда будете вспоминать что-то из материала книги, старайтесь опираться именно на него.

Прежде чем начать работать:

  • Посмотрите оглавления. Их два: краткое и подробное. Краткое даст полную карту книги, а по подробному удобно искать конкретную тему или вопрос.
  • Отметьте заинтересовавшие вас главы. Любопытно ведь, как автор предлагает решить важную для вас задачу. Например, отправку sms и email, работу с Excel или что-то ещё.
  • Прочитайте введение, оно прекрасно: “Эта книга предназначена не для них (высокооплачиваемых программистов). Она предназначена для всех остальных”.
  • Пролистайте отмеченные главы, а также приложения А и Б — про установку модулей и запуск программ.

Приложение В (ответы на вопросы) смотреть нельзя — ни под каким предлогом! Мы вас предупредили.

Не старайтесь сразу глубоко вникать в материал. Инструкции по установке тоже пока что выполнять не надо. Цель первого этапа — присмотреться, войти в процесс постепенно, понять тон и темп книги. После этого можно начинать работу.

Разбор главы из книги

Чтобы понять, годится ли вам эта книга, рассмотрим подробнее восьмую главу, которая называется “Чтение и запись файлов”.

Читатель к этому времени уже прошёл шесть глав первой части, посвящённой основам программирования: установил Python, умеет работать в IDLE, искать по шаблону, а также создавать, редактировать и запускать файлы с расширением .py. Теперь пришло время узнать, как использовать язык для создания, чтения и хранения других файлов на жёстком диске, а также написать несколько полезных программ.

Книга написана в 2016 году, поэтому автор приводит примеры для Windows 7 и Python 3.4. У меня всё прекрасно работало и на более свежих версиях системы и интерпретатора.

Глава начинается с рассказа про модули os и os.path, обратную косую черту, создание новых папок и учит определять размеры файлов и содержимое папок с помощью os.listdir ():

>>> import os
>>> os.listdir('C:\\Users')
['All Users', 'Default', 'Default User', 'Default.migrated', 'desktop.ini', 'Public', 'tsokto', 'Все пользователи']

Дальше — чуть сложнее. Теперь нам предстоит с помощью функции “красивой печати” pprint.pformat () создать свои собственные модули, которые можно будет вызывать командой import.

Но это было только вступление, а теперь мы готовы кодить проект.

Представьте, что вы — преподаватель, которому нужно провести контрольную на знание столиц штатов в США. Билеты должны быть составлены так, чтобы вопросы в них располагались в случайном порядке. По идее, это помешает списывать.

Решаем задачу с помощью Python. Список будущих фич немного пугает: требуется создать и 35 билетов, и 50 вопросов со множественным выбором для каждого билета. Вместе с правильным ответом нужно дать три случайных неправильных и записать это всё в 35 текстовых файлов. А ещё ключи ответов, которые тоже будут в отдельных файлах.

Но оказывается, нам вполне по силам:

  • сохранять названия штатов в словаре — умеем;
  • вызывать методы open (), write (), close () для текстовых файлов — без проблем;
  • использовать функцию random.shuffle () — тоже не бином Ньютона;
  • записывать содержимое в файлы — легко!

Итак, за четыре шага мы напишем программу, которая всё это может делать.

Что ещё нас ждёт в этой главе:

  • работа с многоразрядным буфером;
  • поиск с помощью regexp (регулярных выражений);
  • создание программы Mad Lib, которая читает текстовые файлы и позволяет добавлять произвольный текст в нужные места (например, в тесты по грамматике).

В итоге, чтобы выполнить последние два задания, нам потребуются все полученные в главе знания. А ещё будет нужно ответить на контрольные вопросы — они есть после каждой главы.

Где взять книгу

Книга есть в “Лабиринте” и на “Алибе”. Если не торопитесь, можно дождаться выхода осенью этого года второго издания на русском языке. Чтобы не пропустить момент, подпишитесь на новости издательства. Как вариант, если скоро день рождения, намекните друзьям, чтобы они подарили вам книгу.

Если что-то всё-таки не взлетело: просто запишитесь на наш курс Python-разработчик и станьте востребованным профессионалом. А книгу потом можно будет передарить, разыграть или даже продать на аукционе с вашим автографом — потому что мы в вас верим!

Проверьте свой английский. Бесплатно ➞
Нескучные задания: small talk, поиск выдуманных слов — и не только. Подробный фидбэк от преподавателя + персональный план по повышению уровня.
Пройти тест
Понравилась статья?
Да

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪

Ссылка скопирована