Python для всех
Покупка
Новинка
Тематика:
Программирование и алгоритмизация
Издательство:
ДМК Пресс
Автор:
Северанс Чарльз Р.
Перевод:
Снастин А. В.
Год издания: 2022
Кол-во страниц: 262
Дополнительно
Вид издания:
Практическое пособие
Уровень образования:
Дополнительное образование
ISBN: 978-5-93700-104-7
Артикул: 833964.01.99
Данная книга поможет освоить с нуля язык программирования Python и перейти к решению практических задач анализа данных. Краткий и четкий стиль изложения позволяет быстро усвоить основные принципы программирования. Ознакомившись с базовыми функциональными свойствами языка Python, читатель перейдет к изучению тонких приемов его применения. В многочисленных примерах и упражнениях показана реализация часто применяемых алгоритмов, шаблонов программирования и разнообразных структур данных. Особое внимание уделяется методам обработки сетевых данных и взаимодействия с реляционными базами данных. Почти в каждой главе приводятся полезные советы по отладке программ - обнаружению и исправлению ошибок. Издание предназначено для широкого круга читателей, которые, не являясь профессиональными программистами, тем не менее хотели бы освоить Python и использовать его в своей области деятельности.
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.03: Прикладная информатика
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Чарльз Р. Северанс Python для всех
Python for Everybody Exploring Data Using Python 3 Dr. Charles R. Severance
Python для всех Обработка данных с использованием Python 3 Чарльз Р. Северанс Москва, 2022
УДК 004.94 ББК 32.972 С28 Северанс Ч. Р. С28 Python для всех / пер. с англ. А. В. Снастина. – М.: ДМК Пресс, 2022. – 262 с.: ил. ISBN 978-5-93700-104-7 Данная книга поможет освоить с нуля язык программирования Python и перейти к решению практических задач анализа данных. Краткий и четкий стиль изложения позволяет быстро усвоить основные принципы программирования. Ознакомившись с базовыми функциональными свой ствами языка Python, читатель перейдет к изучению тонких приемов его применения. В многочисленных примерах и упражнениях показана реализация часто применяемых алгоритмов, шаблонов программирования и разнообразных структур данных. Особое внимание уделяется методам обработки сетевых данных и взаимодействия с реляционными базами данных. Почти в каждой главе приводятся полезные советы по отладке программ – обнаружению и исправлению ошибок. Издание предназначено для широкого круга читателей, которые, не являясь профессиональными программистами, тем не менее хотели бы освоить Python и использовать его в своей области деятельности. УДК 004.94 ББК 32.972 Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. ISBN 9781530051120 (англ.) © Dr. Charles R. Severance, 2016 ISBN 9785937001047 (рус.) © Перевод, оформление, издание, ДМК Пресс, 2022
Содержание От издательства ....................................................................................................11 Предисловие ..........................................................................................................12 Глава 1. Почему вы должны учиться писать программы ................14 1.1. Креативность и мотивация ................................................................................15 1.2. Аппаратная архитектура компьютера .............................................................16 1.3. Изучение программирования ...........................................................................18 1.4. Слова и предложения .........................................................................................18 1.5. Диалог с Python ...................................................................................................20 1.6. Терминология: интерпретатор и компилятор ...............................................22 1.7. Написание программы .......................................................................................24 1.8. Что такое программа ..........................................................................................24 1.9. Структурные элементы программы .................................................................26 1.10. Что могло бы пойти не так ...............................................................................27 1.11. Отладка ...............................................................................................................29 1.12. Процесс обучения..............................................................................................30 1.13. Словарь терминов .............................................................................................31 1.14. Упражнения ........................................................................................................32 Глава 2. Переменные, выражения и инструкции ................................34 2.1. Значения и типы .................................................................................................34 2.2. Переменные .........................................................................................................35 2.3. Имена переменных и ключевые слова ............................................................36 2.4. Инструкции ..........................................................................................................37 2.5. Операторы и операнды ......................................................................................37 2.6. Выражения ...........................................................................................................38 2.7. Порядок выполнения операций ........................................................................39 2.8. Оператор деления по модулю ...........................................................................39 2.9. Операции со строками .......................................................................................40 2.10. Запрос ввода от пользователя .........................................................................40 2.11. Комментарии .....................................................................................................41 2.12. Выбор легко запоминаемых имен переменных ...........................................42 2.13. Отладка ...............................................................................................................44 2.14. Словарь терминов .............................................................................................45 2.15. Упражнения ........................................................................................................46 Глава 3. Условное выполнение .....................................................................48 3.1. Логические выражения ......................................................................................48 3.2. Логические операторы .......................................................................................49
Содержание 3.3. Условное выполнение .........................................................................................49 3.4. Альтернативная последовательность выполнения .......................................51 3.5. Цепочечные условные инструкции ..................................................................51 3.6. Вложенные условные инструкции ....................................................................52 3.7. Перехват исключений с использованием ключевых слов try и except ........53 3.8. Вычисление логических выражений по сокращенной схеме ......................55 3.9. Отладка .................................................................................................................57 3.10. Словарь терминов .............................................................................................57 3.11. Упражнения ........................................................................................................58 Глава 4. Функции ..................................................................................................60 4.1. Вызовы функций .................................................................................................60 4.2. Встроенные функции..........................................................................................60 4.3. Функции преобразования типов ......................................................................61 4.4. Математические функции .................................................................................62 4.5. Случайные числа .................................................................................................63 4.6. Добавление новых функций ..............................................................................64 4.7. Определение и использование ..........................................................................66 4.8. Поток выполнения ..............................................................................................66 4.9. Параметры и аргументы ....................................................................................67 4.10. Продуктивные и пус тые функции ..................................................................68 4.11. Зачем нужны функции .....................................................................................69 4.12. Отладка ...............................................................................................................70 4.13. Словарь терминов .............................................................................................70 4.14. Упражнения ........................................................................................................72 Глава 5. Итерации ................................................................................................74 5.1. Обновление переменных ...................................................................................74 5.2. Инструкция while .................................................................................................74 5.3. Бесконечные циклы ............................................................................................75 5.4. Завершение отдельных итераций с помощью инструкции continue ...........77 5.5. Определение циклов с использованием инструкции for .............................78 5.6. Шаблоны цикла ...................................................................................................79 5.6.1. Циклы подсчета и суммирования .............................................................79 5.6.2. Циклы вычисления максимума и минимума ..........................................80 5.7. Отладка .................................................................................................................81 5.8. Словарь терминов ...............................................................................................82 5.9. Упражнения ..........................................................................................................83 Глава 6. Строки ......................................................................................................84 6.1. Строка – это последовательность .....................................................................84 6.2. Получение длины строки с помощью функции len .......................................85 6.3. Проход по строке с использованием цикла ....................................................85 6.4. Вырезки строк ......................................................................................................86 6.5. Строки неизменяемы .........................................................................................87
Содержание 7 6.6. Работа в цикле и подсчет ...................................................................................87 6.7. Оператор in ...........................................................................................................88 6.8. Сравнение строк ..................................................................................................88 6.9. Методы строк .......................................................................................................89 6.10. Синтаксический разбор (парсинг) строк .......................................................91 6.11. Оператор формата ............................................................................................92 6.12. Отладка ...............................................................................................................93 6.13. Словарь терминов .............................................................................................94 6.14. Упражнения ........................................................................................................95 Глава 7. Файлы ......................................................................................................96 7.1. Длительное хранение данных ...........................................................................96 7.2. Открытие файлов ................................................................................................97 7.3. Текстовые файлы и строки в них ......................................................................98 7.4. Чтение файлов .....................................................................................................99 7.5. Поиск в файле ....................................................................................................100 7.6. Предоставление пользователю выбора имени файла .................................103 7.7. Использование try, except и open ......................................................................104 7.8. Запись в файлы ..................................................................................................105 7.9. Отладка ...............................................................................................................106 7.10. Словарь терминов ...........................................................................................107 7.11. Упражнения ......................................................................................................107 Глава 8. Списки ....................................................................................................109 8.1. Список – это последовательность ...................................................................109 8.2. Списки – изменяемые объекты ......................................................................109 8.3. Проход по списку ..............................................................................................110 8.4. Операции со списками .....................................................................................111 8.5. Вырезка из списка .............................................................................................111 8.6. Методы списков.................................................................................................112 8.7. Удаление элементов ..........................................................................................113 8.8. Списки и функции ............................................................................................113 8.9. Списки и строки ................................................................................................115 8.10. Синтаксический анализ (парсинг) строк .....................................................116 8.11. Объекты и значения .......................................................................................116 8.12. Псевдонимы .....................................................................................................117 8.13. Списки как аргументы ...................................................................................118 8.14. Отладка .............................................................................................................119 8.15. Словарь терминов ...........................................................................................124 8.16. Упражнения ......................................................................................................124 Глава 9. Словари .................................................................................................127 9.1. Словарь как множество счетчиков .................................................................129 9.2. Словари и файлы ...............................................................................................130 9.3. Циклы и словари ...............................................................................................132
Содержание 9.4. Расширенный синтаксический анализ текста ..............................................133 9.5. Отладка ...............................................................................................................135 9.6. Словарь терминов .............................................................................................135 9.7. Упражнения ........................................................................................................136 Глава 10. Кортежи .............................................................................................138 10.1. Кортежи неизменяемы ...................................................................................138 10.2. Сравнение кортежей .......................................................................................139 10.3. Присваивание кортежам ................................................................................141 10.4. Словари и кортежи ..........................................................................................142 10.5. Множественное присваивание с помощью словарей ...............................143 10.6. Наиболее часто встречающиеся слова .........................................................144 10.7. Использование кортежей как ключей в словарях .......................................145 10.8. Последовательности: строки, списки и кортежи – ну и ну! ......................146 10.9. Отладка .............................................................................................................146 10.10. Словарь терминов .........................................................................................147 10.11. Упражнения ....................................................................................................147 Глава 11. Регулярные выражения .............................................................149 11.1. Символы определения совпадений в регулярных выражениях ..............150 11.2. Извлечение данных с использованием регулярных выражений ............152 11.3. Объединение поиска и извлечения ..............................................................154 11.4. Специальный символ экранирования (escape) ..........................................158 11.5. Итоговый обзор специальных символов .....................................................159 11.6. Дополнительный раздел для пользователей систем Unix/Linux .............160 11.7. Отладка .............................................................................................................161 11.8. Словарь терминов ...........................................................................................161 11.9. Упражнения ......................................................................................................162 Глава 12. Сетевые программы ....................................................................163 12.1. Протокол HTTP – Hypertext Transfer Protocol ..............................................163 12.2. Самый простой в мире веббраузер .............................................................164 12.3. Извлечение изображения с использованием протокола HTTP ...............166 12.4. Извлечение вебстраниц с помощью библиотеки urllib ..........................169 12.5. Чтение двоичных файлов с использованием библиотеки urllib .............170 12.6. Синтаксический анализ формата HTML и вебскрейпинг .......................171 12.7. Синтаксический анализ формата HTML с использованием регулярных выражений...........................................................................................171 12.8. Синтаксический анализ формата HTML с использованием BeautifulSoup .............................................................................................................173 12.9. Дополнительный раздел для пользователей систем Unix/Linux .............176 12.10. Словарь терминов .........................................................................................177 12.11. Упражнения ....................................................................................................177 Глава 13. Использование веб-сервисов .................................................179 13.1. XML – eXtensible Markup Language ...............................................................179 13.2. Синтаксический анализ XML ........................................................................180
Содержание 9 13.3. Проход в цикле по узлам ................................................................................181 13.4. JSON – JavaScript Object Notation ..................................................................182 13.5. Синтаксический анализ формата JSON .......................................................183 13.6. Программные интерфейсы приложений ....................................................185 13.7. Безопасность и использование API ..............................................................186 13.8. Словарь терминов ...........................................................................................187 13.9. Приложение 1: вебсервис геокодирования Google ..................................187 13.10. Приложение 2: Twitter ..................................................................................191 Глава 14. Объектно-ориентированное программирование ........196 14.1. Управление более крупными программами ...............................................196 14.2. Приступим ........................................................................................................197 14.3. Использование объектов ................................................................................197 14.4. Начнем с программ .........................................................................................198 14.5. Разделение задачи на подзадачи .................................................................200 14.6. Наш первый объект Python ............................................................................201 14.7. Классы как типы ..............................................................................................204 14.8. Жизненный цикл объекта ..............................................................................204 14.9. Несколько экземпляров .................................................................................206 14.10. Наследование .................................................................................................207 14.11. Резюме ............................................................................................................208 14.12. Словарь терминов .........................................................................................209 Глава 15. Использование баз данных и SQL .......................................210 15.1. Что такое база данных ....................................................................................210 15.2. Концепции базы данных ................................................................................211 15.3. Браузер базы данных для SQLite...................................................................211 15.4. Создание таблицы базы данных ...................................................................212 15.5. Обзор языка структурированных запросов SQL ........................................215 15.6. Реализация глобального поиска в Twitter с использованием базы данных .......................................................................................................................216 15.7. Основы моделирования данных ...................................................................222 15.8. Программирование с использованием нескольких таблиц .....................225 15.8.1. Ограничивающие условия в таблицах базы данных ..........................227 15.8.2. Извлечение и/или вставка записи.........................................................228 15.8.3. Сохранение отношения следования за другом ...................................229 15.9. Три типа ключей ..............................................................................................230 15.10. Использование JOIN для извлечения данных ............................................231 15.11. Резюме ............................................................................................................233 15.12. Отладка ...........................................................................................................234 15.13. Словарь терминов .........................................................................................234 Глава 16. Визуализация данных ................................................................236 16.1. Создание карты OpenStreetMap по данным геокодирования ..................236 16.2. Визуализация сетей и сетевых соединений ................................................239 16.3. Визуализация данных электронной почты .................................................242
Содержание Приложение А. Участники проекта ...........................................................248 A.1. Список участников проекта «Python for Everybody» («Python для всех») ...................................................................................................................248 A.2. Список участников проекта «Python for Informatics» .................................248 A.3. Предисловие к книге «Think Python».............................................................249 A.3.1. Странная история книги «Think Python» ...............................................249 A.3.2. Благодарности за работу над «Think Python» .......................................250 A.4. Список участников проекта «Think Python» .................................................251 Приложение В. Подробная информация о защите авторского права ...............................................................................................253 Предметный указатель ...................................................................................255