Простой Python. Современный стиль программирования
Любанович Билл
Эта книга идеально подходит как для начинающих программистов, так и для тех, кто только собирается осваивать Python, но уже имеет опыт программирования на других языках. В ней подробно рассматриваются самые современные пакеты и библиотеки Python. Стилистически издание напоминает руководство с вкраплениями кода, подробно объясняя различные концепции Python 3. Под обложкой вы найдете обширный материал от самых основ языка до сравнительно сложных и узких тем.
Прочитав эту книгу, вы не только убедитесь, что Python — это вкусно, но и освоите искусство тестирования, отладки, многократного использования кода, а также научитесь применять Python в различных предметных областях.
Издательство: Питер, Серия: Бестселлеры O'Reilly, 2016 г.
ISBN 978-5-496-02088-6
Количество страниц: 480.
Содержание книги «Простой Python. Современный стиль программирования»:
- 23 Введение
- 23 Аудитория
- 23 Краткое описание
- 25 Версии Python
- 26 Соглашения, принятые в этой книге
- 26 Использование примеров кода
- 27 Как с нами связаться
- 27 Благодарности
- 28 Глава 1. Python: с чем его едят
- 33 Python в реальном мире
- 33 Python против языка Х
- 37 Почему же Python?
- 37 Когда не стоит использовать Python
- 38 Python 2 против Python 3
- 39 Установка Python
- 39 Запуск Python
- 39 Использование интерактивного интерпретатора
- 40 Использование файлов Python
- 41 Что дальше?
- 41 Момент просветления
- 42 Упражнения
- 43 Глава 2. Ингредиенты Python: числа, строки и переменные
- 43 Переменные, имена и объекты
- 47 Числа
- 47 Целые числа
- 51 Приоритет операций
- 52 Системы счисления
- 53 Преобразования типов
- 55 Насколько объемен тип int?
- 55 Числа с плавающей точкой
- 56 Математические функции
- 56 Строки
- 57 Создаем строки с помощью кавычек
- 59 Преобразование типов данных с помощью функции str()
- 60 Создаем управляющие символы с помощью символа \
- 61 Объединяем строки с помощью символа +
- 61 Размножаем строки с помощью символа *
- 61 Извлекаем символ с помощью символов [ ]
- 62 Извлекаем подстроки с помощью оператора [ start : end : step ]
- 65 Получаем длину строки с помощью функции len()
- 65 Разделяем строку с помощью функции split()
- 66 Объединяем строки с помощью функции join()
- 66 Развлекаемся со строками
- 67 Регистр и выравнивание
- 68 Заменяем символы с помощью функции replace()
- 69 Больше действий со строками
- 69 Упражнения
- 70 Глава 3. Наполнение Python: списки, кортежи, словари и множества
- 70 Списки и кортежи
- 71 Списки
- 71 Создание списков с помощью оператора [] или метода list()
- 71 Преобразование других типов данных в списки с помощью функции list()
- 72 Получение элемента с помощью конструкции [смещение]
- 73 Списки списков
- 74 Изменение элемента с помощью конструкции [смещение]
- 74 Отрежьте кусочек — извлечение элементов с помощью диапазона смещений
- 75 Добавление элемента в конец списка с помощью метода append()
- 75 Объединяем списки с помощью метода extend() или оператора +=
- 76 Добавление элемента с помощью функции insert()
- 76 Удаление заданного элемента с помощью функции del
- 77 Удаление элемента по значению с помощью функции remove()
- 77 Получение заданного элемента и его удаление с помощью функции pop()
- 77 Определение смещения элемента по значению с помощью функции index()
- 78 Проверка на наличие элемента в списке с помощью оператора in
- 78 Определяем количество включений значения с помощью функции count()
- 78 Преобразование списка в строку с помощью функции join()
- 79 Меняем порядок элементов с помощью функции sort()
- 80 Получение длины списка с помощью функции len()
- 80 Присваивание с помощью оператора =, копирование с помощью функции copy()
- 81 Кортежи
- 82 Создание кортежей с помощью оператора ()
- 83 Кортежи против списков
- 83 Словари
- 84 Создание словаря с помощью {}
- 84 Преобразование с помощью функции dict()
- 85 Добавление или изменение элемента с помощью конструкции [ключ]
- 87 Объединение словарей с помощью функции update()
- 87 Удаление элементов по их ключу с помощью del
- 88 Удаление всех элементов с помощью функции clear()
- 88 Проверяем на наличие ключа с помощью in
- 89 Получение элемента словаря с помощью конструкции [ключ]
- 89 Получение всех ключей с помощью функции keys()
- 90 Получение всех значений с помощью функции values()
- 90 Получение всех пар «ключ — значение» с помощью функции items()
- 90 Присваиваем значения с помощью оператора =, копируем их с помощью функции copy()
- 91 Множества
- 92 Создание множества с помощью функции set()
- 92 Преобразование других типов данных с помощью функции set()
- 93 Проверяем на наличие значения с помощью ключевого слова in
- 94 Комбинации и операторы
- 97 Сравнение структур данных
- 97 Создание крупных структур данных
- 98 Упражнения
- 100 Глава 4. Корочка Python: структуры кода
- 100 Комментируем с помощью символа #
- 101 Продлеваем строки с помощью символа \
- 102 Сравниваем выражения с помощью операторов if, elif и else
- 106 Повторяем действия с помощью while
- 107 Прерываем цикл с помощью break
- 107 Пропускаем итерации с помощью continue
- 108 Проверяем, завершился ли цикл заранее, с помощью else
- 108 Выполняем итерации с помощью for
- 110 Прерываем цикл с помощью break
- 110 Пропускаем итерации с помощью continue
- 110 Проверяем, завершился ли цикл заранее, с помощью else
- 111 Итерирование по нескольким последовательностям с помощью функции zip()
- 112 Генерирование числовых последовательностей с помощью функции range()
- 113 Прочие итераторы
- 113 Включения
- 113 Включение списков
- 116 Включение словаря
- 116 Включение множества
- 117 Включение генератора
- 118 Функции
- 122 Позиционные аргументы
- 122 Аргументы — ключевые слова
- 122 Указываем значение параметра по умолчанию
- 124 Получаем позиционные аргументы с помощью *
- 125 Получение аргументов — ключевых слов с помощью **
- 125 Строки документации
- 126 Функции — это граждане первого класса
- 128 Внутренние функции
- 129 Замыкания
- 130 Анонимные функции: функция lambda()
- 131 Генераторы
- 132 Декораторы
- 134 Пространства имен и область определения
- 137 Обработка ошибок с помощью try и except
- 139 Создание собственных исключений
- 140 Упражнения
- 142 Глава 5. Py Boxes: модули, пакеты и программы
- 142 Отдельные программы
- 143 Аргументы командной строки
- 143 Модули и утверждение import
- 143 Импортируем модуль
- 145 Импортируем модуль с другим именем
- 145 Импортируем только самое необходимое
- 146 Директории поиска модулей
- 146 Пакеты
- 147 Стандартная библиотека Python
- 148 Обработка отсутствующих ключей с помощью функций setdefault() и defaultdict()
- 150 Подсчитываем элементы с помощью функции Counter()
- 151 Упорядочиваем по ключу с помощью OrderedDict()
- 152 Стек + очередь == deque
- 153 Итерируем по структурам кода с помощью itertools
- 155 Выводим данные на экран красиво с помощью функции pprint()
- 155 Нужно больше кода
- 156 Упражнения
- 157 Глава 6. Ой-ой-ой: объекты и классы
- 157 Что такое объекты
- 158 Определяем класс с помощью ключевого слова class
- 160 Наследование
- 161 Перегрузка метода
- 162 Добавление метода
- 163 Просим помощи у родителя с помощью ключевого слова super
- 164 В защиту self
- 165 Получаем и устанавливаем значение атрибутов с помощью свойств
- 168 Искажение имен для безопасности
- 169 Типы методов
- 170 Утиная типизация
- 172 Особые методы
- 175 Композиция
- 176 Когда лучше использовать классы и объекты, а когда — модули
- 178 Упражнения
- 180 Глава 7. Работаем с данными профессионально
- 180 Текстовые строки
- 180 Unicode
- 188 Формат
- 192 Совпадение с регулярными выражениями
- 200 Бинарные данные
- 200 bytes и bytearray
- 202 Преобразуем бинарные данные с помощью модуля struct
- 205 Другие инструменты для работы с бинарными данными
- 206 Преобразование байтов/строк с помощью функции binascii()
- 206 Битовые операторы
- 207 Упражнения
- 180 Текстовые строки
- 210 Глава 8. Данные должны куда-то попадать
- 210 Ввод информации в файлы и ее вывод из них
- 211 Запись в текстовый файл с помощью функции write()
- 213 Считываем данные из текстового файла с помощью функций read(), readline() и readlines()
- 215 Записываем данные в бинарный файл с помощью функции write()
- 216 Читаем бинарные файлы с помощью функции read()
- 216 Закрываем файлы автоматически с помощью ключевого слова with
- 216 Меняем позицию с помощью функции seek()
- 218 Структурированные текстовые файлы
- 219 CSV
- 221 XML
- 223 HTML
- 223 JSON
- 226 YAML
- 228 Безопасность
- 228 Конфигурационные файлы
- 229 Другие форматы обмена данными
- 230 Сериализация с помощью pickle
- 231 Структурированные бинарные файлы
- 231 Электронные таблицы
- 231 HDF5
- 232 Реляционные базы данных
- 233 SQL
- 234 DB-API
- 234 SQLite
- 236 MySQL
- 237 PostgreSQL
- 237 SQLAlchemy
- 244 Хранилища данных NoSQL
- 244 Семейство dbm
- 245 Memcached
- 246 Redis
- 254 Прочие серверы NoSQL
- 255 Full-Text Databases
- 255 Упражнения
- 210 Ввод информации в файлы и ее вывод из них
- 257 Глава 9. Распутываем Всемирную паутину
- 258 Веб-клиенты
- 259 Тестируем с telnet
- 260 Стандартные веб-библиотеки Python
- 262 За пределами стандартной библиотеки: requests
- 263 Веб-серверы
- 263 Простейший веб-сервер Python
- 265 Web Server Gateway Interface
- 265 Фреймворки
- 266 Bottle
- 268 Flask
- 272 Веб-серверы, не использующие Python
- 274 Другие фреймворки
- 276 Веб-сервисы и автоматизация
- 276 Модуль webbrowser
- 277 API для Сети и Representational State Transfer
- 278 JSON
- 278 Поиск и выборка данных
- 278 Получаем HTML-код с помощью BeautifulSoup
- 280 Упражнения
- 258 Веб-клиенты
- 281 Глава 10. Системы
- 281 Файлы
- 281 Создаем файл с помощью функции open()
- 282 Проверяем существование файла с помощью функции exists()
- 282 Проверяем тип с помощью функции isfile()
- 283 Копируем файлы с помощью функции copy()
- 283 Изменяем имена файлов с помощью функции rename()
- 283 Создаем ссылки с помощью link() или symlink()
- 284 Изменяем разрешения с помощью функции chmod()
- 284 Изменение владельца файла с помощью функции chown()
- 285 Получаем pathname с помощью функции abspath()
- 285 Получаем символьную ссылку с помощью функции realpath()
- 285 Удаляем файл с помощью функции remove()
- 285 Директории
- 285 Создаем директорию с помощью функции mkdir()
- 286 Удаляем директорию с помощью функции rmdir()
- 286 Выведем на экран содержимое директории с помощью функции listdir()
- 287 Изменяем текущую директорию с помощью функции chdir()
- 287 Перечислим совпадающие файлы с помощью функции glob()
- 287 Программы и процессы
- 288 Создаем процесс с помощью модуля subprocess
- 290 Создание процесса с помощью модуля multiprocessing
- 290 Убиваем процесс с помощью функции terminate()
- 291 Календари и часы
- 292 Модуль datetime
- 295 Использование модуля time
- 297 Читаем и записываем дату и время
- 300 Альтернативные модули
- 300 Упражнения
- 281 Файлы
- 302 Глава 11. Конкуренция и сети
- 303 Конкуренция
- 304 Очереди
- 305 Процессы
- 306 Потоки
- 308 Зеленые потоки и gevent
- 311 twisted
- 312 asyncio
- 313 Redis
- 316 Помимо очередей
- 317 Сети
- 317 Шаблоны
- 318 Модель публикации-подписки
- 322 TCP/IP
- 323 Сокеты
- 327 ZeroMQ
- 331 Scapy
- 332 Интернет-службы
- 334 Веб-службы и API
- 335 Удаленная обработка
- 340 Большие данные и MapReduce
- 341 Работаем в облаках
- 344 Упражнения
- 346 Глава 12. Быть питонщиком
- 346 О программировании
- 347 Ищем код на Python
- 348 Установка пакетов
- 348 Используем pip
- 349 Использование менеджера пакетов
- 349 Установка из исходного кода
- 349 Интегрированные среды разработки
- 350 IDLE
- 350 PyCharm
- 350 IPython
- 351 Именуйте и документируйте
- 352 Тестируем ваш код
- 352 Тестируем с помощью pylint, pyflakes и PEP-8
- 354 Тестируем код с помощью unittest
- 358 Тестируем с помощью пакета doctest
- 359 Тестируем с помощью пакета nose
- 360 Другие фреймворки для тестирования
- 361 Постоянная интеграция
- 361 Отлаживаем свой код
- 362 Отлаживаем с помощью pdb
- 368 Записываем в журнал сообщения об ошибках
- 371 Оптимизируем ваш код
- 371 Измеряем время
- 373 Алгоритмы и структуры данных
- 374 Cython, NumPy и расширения C
- 375 PyPy
- 375 Управление исходным кодом
- 375 Mercurial
- 376 Git
- 378 Клонируйте эту книгу
- 378 Как узнать больше
- 379 Книги
- 379 Сайты
- 380 Группы
- 380 Конференции
- 380 Coming Attractions
- 382 Приложения
- 382 Приложение A. Пи-Арт
- 382 2D-графика
- 382 Стандартная библиотека
- 383 PIL и Pillow
- 386 ImageMagick
- 386 Графические пользовательские интерфейсы (Graphical User Interface, GUI)
- 388 Трехмерная графика и анимация
- 391 Диаграммы, графики и визуализация
- 391 matplotlib
- 392 bokeh
- 393 Игры
- 393 Аудио и музыка
- 382 2D-графика
- 395 Приложение Б. За работой
- 395 The Microsoft Office Suite
- 397 Выполняем бизнес-задачи
- 397 Обработка бизнес-данных
- 398 Извлечение, преобразование и загрузка
- 401 Дополнительные источники информации
- 402 Python в области финансов
- 402 Безопасность бизнес-данных
- 403 Карты
- 403 Форматы
- 404 Нарисуем карту
- 407 Приложения и данные
- 408 Приложение В. Py в науке
- 408 Математика и статистика в стандартной библиотеке
- 408 Математические функции
- 410 Работа с комплексными числами
- 411 Рассчитываем точное значение чисел с плавающей точкой с помощью decimal
- 412 Выполняем вычисления для рациональных чисел с помощью модуля fractions
- 412 Используем Packed Sequences с помощью array
- 413 Обработка простой статистики с помощью модуля statistics
- 413 Перемножение матриц
- 413 Python для науки
- 414 NumPy
- 414 Создание массива с помощью функции array()
- 415 Создание массива с помощью функции arange()
- 416 Создание массива с помощью функций zeros(), ones() и random()
- 417 Изменяем форму массива с помощью метода reshape()
- 418 Получаем элемент с помощью конструкции []
- 419 Математика массивов
- 420 Линейная алгебра
- 421 Библиотека SciPy
- 421 Библиотека SciKit
- 421 Библиотека IPython
- 422 Лучший интерпретатор
- 423 Блокноты IPython
- 426 Pandas
- 427 Python и научные области
- 408 Математика и статистика в стандартной библиотеке
- 428 Приложение Г. Установка Python 3
- 428 Установка стандартной версии Python
- 431 Mac OS X
- 432 Windows
- 432 Linux или Unix
- 432 Установка Anaconda
- 435 Установка и использование pip и virtualenv
- 436 Установка и использование conda
- 428 Установка стандартной версии Python
- 437 Приложение Д. Ответы к упражнениям
- 437 Глава 1. Python: с чем его едят
- 438 Глава 2. Ингредиенты Python: числа, строки и переменные
- 438 Глава 3. Наполнение Python: списки, кортежи, словари и множества
- 442 Глава 4. Корочка Python: структуры кода
- 445 Глава 5. Py Boxes: модули, пакеты и программы
- 447 Глава 6. Ой-ой-ой: объекты и классы
- 451 Глава 7. Работаем с данными профессионально
- 458 Глава 8. Данные должны куда-то попадать
- 462 Глава 9. Распутываем Всемирную паутину
- 463 Глава 10. Системы
- 465 Глава 11. Конкуренция и сети
- 473 Приложение Е. Вспомогательные таблицы
- 473 Приоритет операторов
- 474 Строковые методы
- 474 Изменение регистра
- 474 Поиск
- 474 Изменение
- 475 Форматирование
- 475 Тип строки
- 476 Атрибуты модуля string
Инструкция как скачать книгу Любанович Билл: Простой Python. Современный стиль программирования в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.