Kitobni o'qish: «Быстрый Python. автоматизация рутинных задач за неделю»

Shrift:

Вступление

Приветствую вас, будущий автоматизатор!

Вы держите в руках (или на экране) практическое руководство, которое за семь дней превратит вас из новичка, возможно, лишь слышавшего о Python, в уверенного пользователя, способного заставить компьютер работать на себя. Эта книга – не про академическое программирование, не про сложные алгоритмы и теории. Это практикум по написанию простых, но чрезвычайно полезных скриптов, которые возьмут на себя рутину, сберегут ваше время и откроют новые возможности в работе с компьютером.

Каждый день мы сталкиваемся с однообразными, повторяющимися задачами: сотни файлов нужно переименовать, данные из разных источников – собрать в одну таблицу, регулярно проверять сайты на обновления или отправлять однотипные письма. Выполнять это вручную – скучно, долго и чревато ошибками. Именно здесь на помощь приходит Python – язык программирования, знаменитый своей простотой, читаемостью и огромным набором инструментов для автоматизации буквально всего.

Кому будет полезна эта книга? * Офисным работникам, уставшим от монотонного копирования данных между Excel, Word и почтой. * Системным администраторам и IT-специалистам, желающим автоматизировать обслуживание компьютеров и сетей. * Студентам и исследователям, которым нужно быстро обрабатывать большие объёмы данных или текстов. * Всем любознательным пользователям ПК, кто хочет выйти за рамки стандартного софта и научить компьютер подстраиваться под свои нужды.

Мы начнём с абсолютного нуля: установим Python, разберём базовый синтаксис и уже к концу первого дня напишем первые скрипты для работы с файлами. Каждая последующая глава – это новый шаг вперёд и новый набор конкретных задач, которые вы сможете решить сразу после прочтения. Вы не просто изучите команды, а поймёте логику автоматизации, научитесь «видеть» рутину вокруг себя и превращать её в несколько строк кода.

Наша цель – не сделать из вас профессионального разработчика (хотя это может стать отличным стартом), а дать вам в руки мощный и практический инструмент. Инструмент, который экономит самый ценный ресурс – время, освобождая его для творчества, анализа и решения действительно интересных задач.

Готовы за неделю изменить свой подход к работе за компьютером? Тогда вперёд – к первой главе!

Часть 1. Основы Python для автоматизации

Знакомство с Python и установка окружения

Представьте, что вы приехали на большую стройку. Повсюду лежат материалы, стоят машины, но главного – мастера, который знает, что с этим всем делать, – нет. Компьютер без программы – это примерно такая же картина. Много возможностей, но они спят. Python – это тот самый мастер-прораб, который просыпается, когда вы ему звоните, и говорит: ‘Я понял, что нужно сделать, давайте начнем’. Наша задача сегодня – не просто позвать его, а познакомиться, пригласить в гости и обустроить ему рабочее место на вашем компьютере. Это и называется ‘установить окружение’.

Почему именно Python? Давайте без заумных фраз про ‘высокоуровневый’ и ‘интерпретируемый’. Представьте языки программирования как реальные языки. Некоторые – как латынь, очень точные и строгие, но говорить на них в быту неудобно. Другие – как сленг подростков, быстро меняются и не всем понятны. Python – это как разговорный, современный и при этом очень понятный язык. Он создавался с идеей, что код должен легко читаться, будто это рассказ или инструкция на обычном языке. В мире автоматизации это золотой стандарт, потому что часто скрипт пишется один раз, а читается и правится потом много раз. И когда вы через месяц посмотрите на свой код, вы с большой вероятностью поймете, что же вы там написали.

Устанавливаем Python

Процесс установки Python на компьютер похож на установку любой другой программы, но с одним важным нюансом – нужно поставить галочку в одном волшебном месте. Сначала заходим на официальный сайт python.org. Не пугайтесь английского, мы найдем нужную кнопку. На главной странице вы увидите большую желтую кнопку с надписью ‘Downloads’. Нажимаем на нее, и сайт, скорее всего, сам предложит вам последнюю версию для вашей операционной системы – Windows, macOS или Linux. Скачиваем установщик и запускаем его.

Вот тут наступает ключевой момент. В начале установщика, в самом первом окне, будет маленький, но крайне важный пункт в самом низу: ‘Add Python to PATH’. Рядом с ним будет пустая галочка. Ваша святая обязанность – поставить эту галочку. Что такое PATH? Это как адресная книга вашей операционной системы. Когда вы ставите галочку, вы говорите системе: ‘Запомни, пожалуйста, где жит наш новый мастер-прораб Python, чтобы мы могли позвать его отовсюду, просто по имени’. Если не поставить галочку, вам придется каждый раз, когда вы захотите с ним поговорить, заходить к нему домой полным адресом, а это неудобно. Ставим галочку и жмем ‘Install Now’. Через пару минут мастер будет готов к работе.

Первый разговор

После установки нужно убедиться, что все прошло хорошо и система действительно узнает Python. Открываем командную строку. На Windows это делается через поиск в меню ‘Пуск’ – вводим ‘cmd’ и нажимаем Enter. На macOS открываем программу ‘Терминал’ через поиск Spotlight. Появится черное или белое окно с мигающим курсором. Это консоль, наш прямой проводник к душе компьютера. Теперь вводим туда магическую фразу: python –version. И нажимаем Enter. Если вы все сделали правильно, в следующей строке появится ответ что-то вроде ‘Python 3.11.4’. Это система здоровается с Python и спрашивает его версию, а он в ответ называет свой ‘титул’. Если же вы видите ошибку, что команда не найдена, значит, та самая галочка про PATH не сработала. Не беда, это исправимо, но требует чуть больше шагов, которые легко гуглятся по запросу ‘добавить Python в PATH’ для вашей системы. Главное – не сдаваться на этом этапе.

Где писать код

Теперь, когда прораб на месте, нужно определиться, где мы будем с ним общаться. Можно, конечно, разговаривать прямо в командной строке, но это как обсуждать проект стройки, стоя посреди участка и крича друг другу. Удобнее сесть в бытовку, разложить чертежи. Для этого существуют специальные программы – редакторы кода и среды разработки (IDE).

Не стоит сразу лезть в самые мощные и сложные IDE. Они как огромный командный центр с сотнями кнопок, которые вам пока не нужны. Начните с простого текстового редактора, который понимает Python. Отличный и бесплатный вариант – Visual Studio Code (или просто VS Code). Его легко найти в интернете, скачать и установить. Он легкий, понятный и после установки сразу предложит поставить расширение для Python, что сделает его вашим лучшим другом. В нем вы будете писать скрипты – текстовые файлы с расширением .py. Это и есть те самые инструкции для нашего прораба Python.

Попробуйте создать прямо сейчас на рабочем столе файл с именем test.py. Откройте его в VS Code или даже в простом ‘Блокноте’. Напишите там одну строчку: print(‘Привет, я мастер Python!’). Сохраните файл. Теперь откройте командную строку, перейдите в папку ‘Рабочий стол’ (команда ‘cd Desktop’ на английской раскладке) и выполните команду python test.py. В окне консоли вы должны увидеть ваше приветствие. Поздравляю, вы только что запустили свою первую программу! Вы отдали прорабу первую устную команду, и он ее выполнил.

Мысли перед дорогой

На этом этапе многие откладывают все на потом. Срабатывает страх: ‘А вдруг я все сломаю?’, ‘Это слишком сложно для меня’. Давайте сделаем паузу. Закройте глаза и вспомните, как вы в первый раз устанавливали сложное приложение на телефон или настраивали новый телевизор. Было страшно нажать не ту кнопку? Скорее всего, да. Но вы же разобрались, методом тыка и подсказок. Здесь то же самое. Компьютер – очень терпеливый тренажер. Он не сломается от того, что вы установите Python или напишете не ту команду. В худшем случае вы получите понятное сообщение об ошибке, которое можно скопировать и найти в интернете. Миллионы людей прошли этот путь до вас. Теперь ваша очередь. Подумайте, сколько рутинных действий вы делаете за компьютером каждый день, которые, как вам кажется, нельзя автоматизировать. Возможно, уже через неделю вы посмотрите на них иначе.

Переменные и типы данных

Вспомните, как вы делаете покупки в магазине. У вас в руках корзина, в которую вы кладете разные предметы. Вы можете назвать эту корзину как угодно – «еда», «хозтовары» или даже «мои_покупки_на_вечер». Самое главное, что в корзину можно положить яблоко, пачку молока или упаковку батареек. Корзина – это переменная, а то, что вы в нее кладете – это данные. Python работает очень похоже.

Программа – это набор инструкций для компьютера, а чтобы давать инструкции, нужно где-то хранить информацию, с которой мы работаем. Вот для этого и нужны переменные. Переменная в Python – это просто имя, которое вы даете какому-то значению, чтобы потом его использовать. Создать переменную проще простого – придумайте имя и поставьте знак равенства. Слева от знака равенства – имя корзины, справа – то, что вы в нее кладете.

Коробка_с_числом = 42 Надпись_на_двери = “Вход воспрещен” Флаг_включения = True

Вы только что создали три переменные и положили в них три принципиально разных типа данных. И это ключевой момент – данные бывают разные, и Python это прекрасно понимает. Цифра 42 – это целое число, или, как говорят программисты, целочисленный тип – integer (сокращенно int). Текст в кавычках “Вход воспрещен” – это строка, или string (str). А слово True (имеющее пару – False) – это булевый тип, или boolean (bool), который может быть только либо истиной, либо ложью. Компьютер по-разному обрабатывает эти типы: с числами можно производить арифметические действия, строки можно склеивать или резать на части, а булевы значения помогают принимать решения.

Коробки с разными отделениями

Давайте присмотримся к этим типам поближе. С числами все более-менее понятно: 10, -5, 0, 100500. Python отлично справляется и с дробными числами, которые называются числами с плавающей точкой – float. Например, температура 36.6, курс доллара 75.43 или математическое число Пи 3.14159 – все это float. Главное отличие от целых чисел – наличие точки, разделяющей целую и дробную часть.

Строки – это все, что заключено в кавычки. Кавычки могут быть одинарными или двойными, главное, чтобы они совпадали в начале и в конце. Это ваш универсальный инструмент для работы с текстом: названия файлов, пути к папкам, содержимое писем, данные из веб-страниц. Вы будете использовать строки постоянно, и одно из первых заданий по автоматизации почти наверняка будет связано с обработкой текста.

А теперь представьте, что вам нужно сохранить не одно значение, а целый список покупок. Для этого в Python есть специальный тип данных – список (list). Создается он с помощью квадратных скобок, а элементы в нем разделяются запятыми. Список покупок = [“молоко”, “хлеб”, “яйца”, “сыр”]. В списке могут храниться элементы любых типов, даже другие списки. Список – это ваша рабочая лошадка, упорядоченная корзина, где каждый предмет лежит на своей позиции, и вы можете обратиться к нему по номеру.

Есть и другие, более специфические коробки – словари (dict), которые хранят данные в виде пар “ключ-значение” (как записная книжка с именами и телефонами), или кортежи (tuple) – неизменяемые списки. Но для старта нам вполне хватит чисел, строк, булевых значений и списков.

Как Python понимает, что в корзине

Одна из классных особенностей Python – это динамическая типизация. Это умное словосочетание означает простую вещь: вам не нужно заранее объявлять, какого типа данные вы собираетесь хранить в переменной. Вы просто кладете туда значение, а Python смотрит на него и сам понимает: “Ага, это число”, или “Так, это текст в кавычках, значит строка”. Более того, вы можете положить в одну и ту же переменную сначала число, потом строку, и Python не будет возражать. Хотя так делать не рекомендуется, чтобы не запутаться самому.

Но иногда вам нужно быть уверенным, с чем именно вы работаете. Для этого есть функция type(). Просто передайте ей вашу переменную, и она вам честно скажет, что внутри.

Вот вы написали: моя_переменная = 100. А потом спросили: print(type(моя_переменная)). И Python ответит вам: <class ‘int’>. Это значит, что внутри лежит целое число. Если бы там была строка, ответ был бы <class ‘str’>. Эта функция – ваш диагностический инструмент, когда что-то идет не так и вы не понимаете, почему скрипт не хочет складывать два “числа”, которые на самом деле являются текстом.

Превращения и волшебство

Жизнь была бы слишком простой, если бы типы данных всегда оставались сами собой. Часто их нужно преобразовывать. Допустим, вы получили от пользователя ввод, и это всегда строка. Даже если пользователь ввел цифру 10, для Python это текст “10”. И если вы попробуете прибавить к этому тексту число 5, вы получите ошибку. Нужно превратить строку в число. Для этого существуют функции-преобразователи: int(), float(), str().

Строка_с_числом = “10” Настоящее_число = int(Строка_с_числом) Результат = Настоящее_число + 5 # Получится 15

Или обратная ситуация: вам нужно вставить значение числа в готовое текстовое сообщение. Тогда вы преобразуете число в строку с помощью str() и спокойно склеиваете его с другим текстом. Эти преобразования будут встречаться вам на каждом шагу, особенно когда вы начнете читать данные из файлов или из интернета – оттуда почти всё приходит в виде текста.

Подумайте на минуту о вашей ежедневной работе за компьютером. Какие данные проходят через ваши руки? Наверняка это имена файлов (строки), размеры этих файлов (числа), даты их изменения (часто строка, которую потом нужно превратить в специальный тип для дат), списки задач или писем. Все эти сущности в программе будут представлены разными типами данных. Понимание, чем число отличается от строки, а строка от списка – это фундамент, на котором вы построите все свои скрипты. Без этого знания вы не сможете заставить компьютер правильно сложить два числа из разных отчетов или найти нужное слово в тысяче текстовых файлов.

Теперь, когда вы знаете про основные коробки для данных, можно переходить к следующему шагу – к действиям, которые мы можем совершать с содержимым этих корзин. Как из двух чисел получить третье, как из двух строк сделать одну или как вытащить нужный элемент из длинного списка. Но это уже тема для следующего разговора. А пока поэкспериментируйте в интерпретаторе: создавайте переменные с разными именами, кладите в них разные значения, проверяйте их типы и пробуйте преобразовывать. Помните, что лучший способ понять – это сделать самому.

Условия и циклы

Давайте представим самую обычную утреннюю рутину. Вы просыпаетесь, идете на кухню и смотрите на чайник. Ваш мозг мгновенно проводит молниеносную проверку: если чайник пустой, то нужно его наполнить водой и включить. Если же он полный, можно сразу нажимать кнопку. А потом, пока чай заваривается, вы, скорее всего, повторяете одно и то же действие несколько раз – помешиваете ложкой в кружке. Компьютер в своих задачах ведет себя точно так же. Он постоянно что-то проверяет и повторяет одни и те же действия сотни, тысячи раз. И сегодня мы научим его именно этому – принимать решения и работать в цикле.

Без этих двух концепций автоматизация просто невозможна. Любой полезный скрипт – это всегда комбинация условий и циклов. Условия – это развилки на дороге, которые говорят программе: «Если случилось вот это, иди налево, а если другое – тогда направо». Циклы – это та самая тропинка, по которой можно ходить кругами, пока не выполнится нужное условие, например, пока не переименуешь все файлы в папке.

Если бы да кабы – учим компьютер выбирать

В Python решение принимается с помощью оператора if, что в переводе с английского и означает «если». Конструкция выглядит очень похоже на обычную человеческую логику. Сначала мы задаем вопрос (условие), а потом говорим, что делать, если ответ «да» (True).

Вот простейший пример из жизни автоматизации. Допустим, у нас есть скрипт, который проверяет, есть ли в папке файлы с расширением .txt. Наш вопрос программе: «Если в имени файла встречается строка “.txt”?» Если да, то мы, к примеру, выводим сообщение, что текстовый файл найден. Код будет выглядеть как обычное предложение: если что-то верно, то сделай вот это. Красота в том, что условием может быть что угодно: проверка типа файла, сравнение размера, наличие определенного слова в тексте, текущее время или даже результат другой программы.

А что делать, если условие не выполнилось? Для этого есть продолжение – else (иначе). Это как план Б. Если файл не текстовый, то, может быть, его нужно переместить в другую папку или просто проигнорировать. Иногда вариантов больше двух – тогда на помощь приходит elif, что значит «иначе если». Это как длинная лестница проверок: если не первое, то проверь второе, если не второе, то третье и так далее. Например, скрипт, сортирующий файлы по типам, будет задавать целую цепочку вопросов: если расширение .jpg – в папку «Фото», иначе если .mp3 – в «Музыку», иначе если .pdf – в «Документы», а иначе – в «Разное». Попробуйте прямо сейчас мысленно пройтись по своей «Загрузкам» или «Рабочему столу». Сколько там файлов, которые можно рассортировать по таким простым правилам? Компьютер сделает это за секунду, не устанет и не ошибется.

Yosh cheklamasi:
16+
Litresda chiqarilgan sana:
17 yanvar 2026
Yozilgan sana:
2026
Hajm:
90 Sahifa 1 tasvir
Mualliflik huquqi egasi:
Автор
Yuklab olish formati: