دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: Петр Левашов
سری: Библиотека программиста
ISBN (شابک) : 9785446121458
ناشر: Питер
سال نشر: 2024
تعداد صفحات: 448
[449]
زبان: Russian
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 6 Mb
در صورت تبدیل فایل کتاب Python с нуля به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب پایتون از ابتدا نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
به دنیای هیجان انگیز برنامه نویسی پایتون خوش آمدید! چه یک برنامه نویس مبتدی یا یک برنامه نویس باتجربه باشید، خود را با دانش و مهارت های مورد نیاز برای تسلط موفقیت آمیز به زبان مجهز خواهید کرد. پایتون که به دلیل سادگی و تطبیق پذیری خود شناخته شده است، محبوبیت زیادی در بین توسعه دهندگان در سراسر جهان به دست آورده است. نحو مناسب و پشتیبانی گسترده از کتابخانه آن را برای طیف وسیعی از وظایف، از توسعه وب و تجزیه و تحلیل داده ها گرفته تا برنامه نویسی رابط کاربری گرافیکی، ایده آل می کند. این کتاب یک راهنمای جامع برای یادگیری پایتون از ابتدا است.
Добро пожаловать в увлекательный мир программирования на языке Python! Независимо от того, начинающий вы или опытный программист, вы вооружитесь знаниями и навыками, необходимыми для успешного освоения языка. Python, известный своей простотой и универсальностью, завоевал огромную популярность среди разработчиков во всем мире. Благодаря удобному синтаксису и широкой библиотечной поддержке он идеально подходит для решения широкого спектра задач — от веб-разработки и анализа данных до программирования графических интерфейсов. Книга представляет собой комплексное руководство по изучению языка Python с нуля.
Краткое содержание
Оглавление
Введение
Об авторе
От издательства
Глава 1. Введение в программирование на Python
Что такое Python
История Python
Установка Python и среды разработки
Интерпретатор Python и REPL (Read-Eval-Print Loop)
Ваша первая программа на Python
Синтаксис и основные концепции программирования
Запуск программ на Python
Основные методы отладки
Стиль кода Python и лучшие практики
Ресурсы для изучения Python
Глава 2. Переменные, типы данных и операторы
Соглашения об именовании переменных
Основные типы данных
Числовые типы данных
Строковый тип данных
Булев тип данных
Приведение типов
Арифметические операторы
Операторы сравнения
Логические операторы
Приоритет и ассоциативность операторов
Задания для самопроверки
Глава 3. Управляющие структуры: условные операторы и циклы
Условные операторы: if, elif и else
Булевы выражения и операторы сравнения
Циклы: for и while
Операторы break, continue и pass
Вложенные циклы и условия
Задания для самопроверки
Глава 4. Функции и модули
Определение и вызов функций
Параметры и аргументы функции
Позиционные аргументы
Параметры ключевых слов
Параметры переменной длины
Операторы возврата и возвращаемые значения
Область действия функции и локальные переменные
Глобальные переменные и оператор global
Лямбда-функции
Встроенные функции
Модули и оператор import
Создание и использование модулей
Стандартная библиотека Python
Задания для самопроверки
Глава 5. Структуры данных: cписки, кортежи и словари
Списки в Python
Кортежи в Python
Словари в Python
Списковое включение
Сортировка и поиск в структурах данных
Продвинутые методы работы со структурами данных
Копирование и клонирование структур данных
Нарезка списка и расширенные нарезки
Множественные входные последовательности в списковых включениях
Словарные включения
Множества и операции с ними
Объединение
Пересечение
Разность
Симметричная разность
Стеки и очереди со списками
Продвинутые методы сортировки
Бинарный поиск
Работа с вложенными структурами данных
Задания для самопроверки
Глава 6. Ввод и вывод
Стандартный ввод-вывод
Чтение пользовательского ввода с помощью input()
Ввод и вывод файлов
Открытие файлов
Чтение и запись данных
Закрытие файлов
Работа с двоичными файлами
Обработка ошибок ввода-вывода при работе с файлами
Задания для самопроверки
Глава 7. Объектно-ориентированное программирование
Классы и объекты
Определение классов
Атрибуты и методы класса
Атрибуты экземпляра и методы
Конструкторы и деструкторы
Наследование
Переопределение метода
Полиморфизм
Абстрактные классы и интерфейсы
Инкапсуляция и сокрытие данных
Абстракция данных и инкапсуляция данных
Модификаторы частного доступа
Перегрузка операторов
Класс и статические методы и переменные
Обработка исключений в ООП
Сборка мусора и управление памятью
Продвинутые темы в ООП
Декораторы
Метаклассы
Множественное наследование
Миксины и компоновщик
Миксины
Компоновщик
Порядок разрешения методов (MRO)
Утиная типизация и EAFP
Monkey patch и динамические классы
Фабрики классов и метапрограммирование
Рефлексия и интроспекция
Задания для самопроверки
Глава 8. Обработка исключений
Синтаксис обработки исключений
Синтаксис блоков try-except
Обработка исключений с помощью блоков except
Обработка нескольких исключений с помощью одного блока except
Использование блоков else и finally в конструкциях try-except
Множественные блоки Except и цепочки исключений
Генерация исключений
Исключения, определяемые пользователем
Возможности блока finally
Лучшие практики и советы по обработке исключений
Сообщения об ошибках
Изящный сбой
Тестирование обработки исключений
Документирование
Задания для самопроверки
Глава 9. Регулярные выражения
Сопоставление текста с помощью регулярных выражений
Специальные символы и экранирование
Классы символов и выражения в квадратных скобках
Основные классы символов
Сокращенные классы символов
Вложенные классы символов
Квантификаторы и альтернация
Квантификатор *
Квантификатор +
Квантификатор ?
Квантификатор { }
Альтернация и |
Квантификаторы и альтернация: лучшие практики и советы
Группировка и захват
Использование круглых скобок для группировки
Захват совпадений с помощью групп
Группы без захвата
Именованные группы
Группировка и захват: лучшие практики и советы
Обратные ссылки и подстановки
Использование обратных ссылок в регулярных выражениях
Замена совпадений с помощью регулярных выражений
Обратные ссылки и подстановки: лучшие практики и советы
Опережающие и ретроспективные проверки
Положительная опережающая проверка
Отрицательная опережающая проверка
Положительная ретроспективная проверка
Отрицательная ретроспективная проверка
Лучшие практики и советы
Лучшие практики и советы по использованию регулярных выражений
Понимание проблемы перед написанием регулярного выражения
Простота и читабельность регулярного выражения
Тестирование и отладка регулярных выражений
Использование встроенных функций и библиотек вместо регулярных выражений
Баланс между гибкостью и производительностью в регулярных выражениях
Работа с граничными случаями и специальными символами
Задания для самопроверки
Глава 10. Работа с библиотеками и API
Работа с библиотеками с помощью pip
Установка библиотек с помощью pip
Управление установленными библиотеками с помощью pip
Обновление и удаление библиотек с помощью pip
Лучшие практики использования pip
Использование стандартных библиотек
Библиотеки и API сторонних производителей
Поиск и оценка библиотек и API сторонних производителей
Установка и импорт библиотек сторонних производителей
Общие библиотеки и API сторонних производителей
Лучшие практики использования библиотек и API сторонних производителей
Аутентификация и авторизация с помощью API
API-ключи
OAuth
Токены
Лучшие практики аутентификации и авторизации API
Запросы и ответы API
HTTP-запросы
Коды состояния ответа HTTP
Парсинг ответов API
Обработка ошибок в ответах API
Лучшие практики работы с API
Работа с данными JSON и XML
Парсинг данных JSON
Создание данных в формате JSON
Парсинг данных XML
Создание данных XML
Лучшие практики работы с данными JSON и XML
Обработка ошибок и отладка в библиотеках и API
Работа с ошибками в библиотеках
Библиотеки и API для отладки
Лучшие практики обработки ошибок и отладки
Работа с библиотеками и API Лучшие практики и советы
Задания для самопроверки
Глава 11. Отладка и тестирование
Техники и инструменты отладки
Стратегии отладки
Оператор print и логирование
Отладчик Python (PDB)
Отладка с помощью точек останова и точек наблюдения
Отладка проблем с памятью
Профилирование и оптимизация производительности
Отладка распространенных ошибок и проблем
Ошибки синтаксиса
Ошибки отступов
Ошибки именования
Ошибки типов
Ошибки атрибутов
Ошибки индекса и ключа
ValueError и TypeError
Ошибки ImportError и ModuleNotFound
FileNotFoundError и IOError
Обработка исключений и возвратов
Отладка в интегрированных средах разработки (IDE)
Отладка в PyCharm
Отладка в Visual Studio Code
Отладка в Eclipse с помощью PyDev
Отладка в блокнотах Jupyter Notebooks
Функции и советы по отладке, специфичные для IDE
Введение в тестирование и разработку на основе тестирования (TDD)
Важность тестирования
Виды тестирования
Обзор разработки на основе тестирования (TDD)
Юнит-тестирование в Python
Написание тестируемого кода
Автоматизация тестирования и непрерывная интеграция
Юнит-тестирование с помощью Pytest
Установка и настройка Pytest
Написание тестовых функций с помощью Pytest
Фикстуры Pytest. Настройка и завершение
Утверждения и соответствия (matchers) в Pytest
Запуск и настройка Pytest
Параметризация тестов и тестирование на основе данных
Плагины и расширения Pytest
Тестовое покрытие и качество кода
Понятие тестового покрытия
Измерение тестового покрытия с помощью Coverage.py
Анализ отчетов о покрытии
Улучшение тестового покрытия
Метрики качества кода
Линтинг и статический анализ
Интеграция проверок качества кода в рабочий процесс
Интеграционное тестирование и непрерывная интеграция (CI)
Написание интеграционных тестов
Инструменты и фреймворки для интеграционного тестирования
Непрерывная интеграция: обзор
Настройка CI-пайплайна
Преимущества сочетания интеграционного тестирования и CI
Отладка и тестирование: лучшие практики и советы
Общие советы по отладке
Лучшие практики тестирования
Советы по разработке на основе тестирования
Код-ревью и совместная работа
Непрерывное совершенствование отладки и тестирования
Баланс между покрытием тестами и сопровождаемостью
Чего следует избегать при отладке и тестировании
Задания для самопроверки
Глава 12. Введение в Data Science на Python
Что такое Data Science
Роль Python в Data Science
Обзор библиотек и инструментов
Применение Data Science в реальном мире с помощью Python
Установка библиотек Data Science в Python
NumPy: массивы и матрицы
Создание массивов NumPy
Атрибуты и свойства массива
Индексация и нарезка массивов
Операции с массивами и трансляция
Матричные операции и линейная алгебра
Продвинутые возможности NumPy
Практическое применение NumPy в Data Science
Pandas: манипулирование данными и их анализ
Ключевые структуры данных: Series и DataFrame
Импорт и экспорт данных
Очистка и предварительная обработка данных
Выбор и индексация данных
Агрегирование и группировка данных
Слияние, объединение и конкатенация данных
Функциональность временных рядов и дат
Визуализация с помощью Pandas
Практическое применение Pandas в Data Science
Matplotlib: визуализация данных
Архитектура Matplotlib
Создание основных типов графиков
Линейные графики
Диаграммы рассеяния
Столбчатые диаграммы
Гистограммы
Настройка графиков
Продвинутые техники построения графиков
Подграфики
3D-графики
Сохранение и экспорт графиков
Интеграция Matplotlib с Pandas
Лучшие практики и советы по визуализации данных с помощью Matplotlib
Seaborn: продвинутая визуализация данных
Seaborn и Matplotlib: ключевые различия
Типы графиков Seaborn
Настройка графиков Seaborn
Темы и стили Seaborn
Интеграция Seaborn с Pandas
Продвинутые техники Seaborn
Лучшие практики и советы по визуализации данных с помощью Seaborn
Scikit-learn: машинное обучение
Ключевые понятия и терминология
Предварительная обработка данных с помощью Scikit-learn
Алгоритмы контролируемого обучения
Алгоритмы неконтролируемого обучения
Оценка и выбор модели
Настройка гиперпараметров
Интеграция Scikit-learn с Pandas и Numpy
Лучшие практики и советы по машинному обучению с помощью Scikit-learn
TensorFlow: глубокое обучение
Ключевые компоненты TensorFlow
Архитектура TensorFlow
TensorFlow Eager Execution
Построение нейронных сетей с помощью TensorFlow
Обучение и оценка моделей в TensorFlow
Расширения и библиотеки TensorFlow
Практическое применение TensorFlow в глубоком обучении
Keras: высокоуровневое глубокое обучение
Ключевые особенности Keras
Параметры бэкенда Keras
Построение нейронных сетей с помощью Keras
Обучение и оценка моделей в Keras
Сохранение и загрузка моделей в Keras
Настройка Keras: пользовательские слои, функции потерь и метрики
Практическое применение Keras в глубоком обучении
Обработка естественного языка с помощью NLTK
Установка и настройка NLTK
Токенизация
Морфологическая разметка (POS)
Распознавание именованных сущностей (NER)
Парсинг и чанкинг
Классификация текста с помощью NLTK
Анализ тональности текста
Суммаризация текста
Практическое применение NLTK в NLP
Лучшие практики и советы по Data Science
Понимание проблемы и определение целей
Сбор и предварительная обработка данных
Конструирование и выбор признаков
Выбор и оценка моделей
Интерпретируемость и объяснимость
Коммуникация и визуализация
Масштабируемость и развертывание
Совместная работа и контроль версий
Постоянное обучение и совершенствование
Этические аспекты в Data Science
Задания для самопроверки
Глава 13. Веб-скрапинг с помощью Python
Области применения веб-скрапинга
Правовые и этические соображения
Компоненты веб-страницы
Рабочий процесс веб-скрапинга
Основы HTML
Структура HTML-документа
Объявление Doctype
Теги и элементы HTML
Атрибуты HTML
id и class
href
src
alt
title
style
Таблицы и списки HTML
HTML-формы и элементы ввода
Структура формы
Входные элементы
Концепция объектной модели документа (DOM)
Библиотеки и инструменты веб-скрапинга
Requests: HTTP для людей
Beautiful Soup: парсинг и навигация по HTML
lxml: высокопроизводительный парсер HTML и XML
Selenium: автоматизация браузера для веб-скрапинга
Scrapy: комплексная платформа для веб-скрапинга
Выбор правильного инструмента для веб-скрапинга
Извлечение данных из веб-страниц
Определение целевых данных
Изучение исходного кода веб-страницы
Google Chrome
Firefox
Safari
Microsoft Edge
Навигация по структуре HTML
Работа с пагинацией и бесконечной прокруткой
Работа с динамическим содержимым и JavaScript
Работа с формами и сессиями
Взаимодействие с формами
Отправка форм и работа с перенаправлениями
Управление сессиями и файлами куки
Обработка аутентификации и входа в систему
Советы по работе с формами и сессиями
Парсинг XML и JSON
Парсинг XML в Python
Парсинг JSON в Python
Конвертация данных из XML в JSON и наоборот
Работа с API и структурированными данными
Продвинутые методы веб-скрапинга
Обработка AJAX-запросов и асинхронная загрузка
Обход капчи и мер по борьбе с ботами
Ротация IP-адресов
Настройка заголовков запросов
Представление задержек
Использование оптического распознавания символов (OCR)
Сторонние услуги по решению капч
Работа с прокси-серверами и ротация IP-адресов
Веб-скрапинг с использованием многопоточности и параллелизма
Эффективное хранение и обработка полученных данных
Мониторинг и сопровождение веб-скраперов
Этические и правовые соображения
Лучшие практики и советы по веб-скрапингу
Планирование проекта веб-скрапинга
Выбор правильных инструментов и библиотек
Относитесь с уважением к ресурсам сайта
Обработка ошибок и механизмы повторной попытки
Внедряйте надежные решения для хранения данных
Мониторинг и сопровождение веб-скраперов
Документация кода и процессов веб-скрапинга
Задания для самопроверки
Глава 14. Программирование графических интерфейсов с помощью Python
Преимущества приложений с GUI
Популярные библиотеки GUI
Выбор правильной GUI-библиотеки
Основные концепции программирования GUI
Наборы инструментов и фреймворки GUI
Tkinter
PyQt и PySide
Kivy
wxPython
PyGTK и PyGObject
PySimpleGUI
Сравнение наборов инструментов и фреймворков GUI
Создание GUI-приложений с помощью Tkinter
Установка и настройка Tkinter
Создание базового окна Tkinter
Виджеты Tkinter и их свойства
Label
Button
Entry
Text
Checkbutton
Radiobutton
Scale
Менеджеры геометрии: Pack, Grid и Place
Pack
Grid
Place
Выбор менеджера геометрии
Обработка событий в Tkinter
Создание наследуемых виджетов и компонентов
Создание приложения Tkinter: пошаговый пример
Отладка и устранение неполадок в приложениях Tkinter
Продвинутые техники программирования GUI
Работа с несколькими окнами и диалогами
Настройка стилей и тем виджетов
Реализация функциональности перетаскивания
Создание и управление таймерами
Обработка событий клавиатуры и мыши
Многопоточность и конкурентность в GUI-приложениях
Интеграция веб-контента и API
Развертывание и распространение
Лучшие практики и советы по программированию GUI
Проектирование удобных для пользователя интерфейсов
Организация и модульность кода
Оптимизация производительности
Обработка ошибок и обратная связь с пользователем
Доступность и интернационализация
Доступность
Интернационализация
Тестирование и отладка
Документация и руководства пользователя
Задания для самопроверки
Заключение
Список источников