Расширенный курс для администраторов Linux
Программа обучения представляет собой курс, посвященный применению Python в задачах системного администрирования. В рамках курса слушатели изучат синтаксис языка, управляющие конструкции, функции, работу с коллекциями, итераторами, генераторами, модулями, исключениями, файлами и классами. Отдельный блок посвящен регулярным выражениям: метасимволам, шаблонам, поиску совпадений, группировке, именованным группам, обратным ссылкам и замене строк средствами модуля re. Практическая часть курса ориентирована на типовые административные задачи: работу с путями и каталогами через pathlib, сохранение данных с помощью shelve, форматированный дамп структур через pprint, файловые операции средствами shutil, а также чтение и запись данных в форматах CSV и JSON. Курс предназначен для специалистов, которые хотят использовать Python как инструмент автоматизации административных задач, обработки текстовых данных, анализа содержимого файлов и упрощения повседневной работы в операционной системе.
Предварительная подготовка
Базовые навыки работы с операционной системой и файловой системой. Начальное понимание структуры файлов, каталогов и командной строки. Желательно общее представление о переменных, условиях и циклах, но курс может использоваться и как вводный для системных администраторов, начинающих работать с Python. Это следует из того, что материалы охватывают синтаксис языка с базовых конструкций и далее переходят к регулярным выражениям и административным задачам.Получаемые навыки
- Понимание синтаксиса Python и правил структурирования кода с помощью отступов;
- Умение использовать ветвления, циклы for и while, а также команды break, continue, pass и range;
- Навыки работы со списковыми, словарными и множественными включениями;
- Умение создавать функции, использовать позиционные, именованные, значения по умолчанию, *args и **kwargs;
- Понимание областей видимости, global, nonlocal и принципов передачи аргументов в функции;
- Навыки применения lambda, map, filter, итераторов, генераторов и itertools;
- Умение обрабатывать исключения через try, except, else, finally;
- Навыки чтения файлов и работы с основными файловыми режимами;
- Понимание основ классов, объектов, атрибутов, методов и модульной организации кода;
- Умение применять регулярные выражения для поиска, фильтрации, выделения и замены текстовых данных;
- Навыки использования pathlib для работы с путями, каталогами, шаблонами поиска и символьными ссылками;
- Умение сохранять и извлекать данные через shelve, формировать дампы через pprint, выполнять копирование, перемещение, удаление и архивирование файлов;
- Навыки чтения и записи CSV и JSON-файлов для административных и учетных задач.