Об авторе....10
О научном редакторе....11
Благодарности....12
Введение....14
Пример однострочника Python....15
Примечание относительно удобочитаемости....16
Для кого эта книга....17
Чему книга вас научит....18
Источники дополнительной информации в интернете....19
От издательства....20
Глава 1. Краткая памятка по Python....21
Основные структуры данных....21
Контейнерные структуры данных....27
Управляющие конструкции....35
Функции....38
Лямбда-функции....39
Итоги главы....39
Глава 2. Трюки Python....41
Поиск самых высокооплачиваемых работников с помощью спискового включения....42
Поиск информативных слов с помощью спискового включения....45
Чтение файла....47
Лямбда-функции и функция map....49
Извлечение окружения вхождений подстрок с помощью срезов....52
Сочетание спискового включения и срезов....56
Исправление испорченных списков с помощью присваивания срезам....58
Анализ данных о сердечной деятельности с помощью конкатенации списков....61
Поиск компаний, платящих меньше минимальной зарплаты, с помощью выражений-генераторов....64
Форматирование баз данных с помощью функции zip()....66
Итоги главы....69
Глава 3. Наука о данных....71
Простейшие операции с двумерными массивами....72
Работа с массивами NumPy: срезы, транслирование и типы массивов....77
Обнаружение аномальных значений с помощью условного поиска по массиву, фильтрации и транслирования....86
Фильтрация двумерных массивов с помощью булева доступа по индексу....91
Очистка каждого i-го элемента массива с помощью транслирования, присваивания срезу и изменения формы....94
Когда использовать в NumPy функцию sort(), а когда — argsort()....99
Создание расширенных фильтров массивов с помощью статистических показателей, а также математических и логических операций....106
Простейший анализ ассоциаций: купившие товар X покупают и товар Y....112
Поиск лучше всего продающихся наборов с помощью промежуточного анализа ассоциаций....115
Итоги главы....118
Глава 4. Машинное обучение....120
Основы машинного обучения с учителем....120
Линейная регрессия....122
Логистическая регрессия в одной строке....130
Кластеризация методом k-средних в одной строке кода....137
Метод k-ближайших соседей в одной строке кода....143
Нейросетевой анализ в одной строке кода....148
Машинное обучение с помощью деревьев принятия решений в одной строке кода....158
Получение строки с минимальной дисперсией в одной строке кода....161
Основные статистические показатели с помощью одной строки кода....165
Классификация путем метода опорных векторов с помощью одной строки кода....169
Классификация с помощью случайных лесов в одной строке кода....173
Итоги главы....178
Глава 5. Регулярные выражения....179
Поиск простых комбинаций символов в строковых значениях....179
Создание вашего первого веб-скрапера с помощью регулярных выражений....184
Анализ гиперссылок HTML-документов....188
Выделение сумм в долларах из строковых значений....192
Поиск небезопасных HTTP URL....195
Проверка формата времени во вводимых пользователем данных, часть 1....198
Проверка формата времени во вводимых пользователем данных, часть 2....200
Поиск удвоенных символов в строковых значениях....202
Поиск повторов слов....205
Модификация задаваемых регулярными выражениями шаблонов в многострочном строковом значении....207
Итоги главы....209
Глава 6. Алгоритмы....210
Поиск анаграмм с помощью лямбда-функций и сортировки....212
Поиск палиндромов с помощью лямбда-функций и негативных срезов....214
Подсчет количества перестановок с помощью рекурсивных функций вычисления факториалов....216
Вычисление расстояния Левенштейна....220
Вычисление булеана с помощью функционального программирования....225
Реализация шифра Цезаря с помощью расширенного доступа по индексу и спискового включения....229
Поиск простых чисел с помощью решета Эратосфена....232
Вычисление последовательности Фибоначчи с помощью функции reduce()....240
Рекурсивный алгоритм бинарного поиска....242
Рекурсивный алгоритм быстрой сортировки....246
Итоги главы....249
Послесловие....250
Краткость — сестра программиста. Эта книга научит вас читать и писать лаконичные и функциональные однострочники. Вы сможете системно разбирать и понимать код на Python, а также писать выразительно и компактно, как настоящий эксперт.
Здесь вы найдете приемы и хитрости написания кода, регулярные выражения, примеры использования однострочников в различных сферах, а также полезные алгоритмы. Подробные пояснения касаются в том числе и важнейших понятий computer science, что поможет вашему росту в программировании и аналитике.