pyth_11_class_stat
Заметка 11. Классы в Питоне.
курса Математический практикум по Питону.
Шокуров Антон В.
shokurov.anton.v@yandex.ru
http://машинноезрение.рф
Версия 0.14

Аннотация

В данной заметке рассматриваются такие понятия Питона как класс (мешок функций/методов и переменных). Последнее позволяет использовать в смысле наследования мощные классы относящихся к анализу данных, в частности, GenericLikelihoodModel.

Ключевые слова: Питон (python), классы (class), методы (methods), виртуальные (virtual), наследование (inheritance).

Это предварительная версия! Любые замечания приветствуются.

Классы в Python

Создание объекта

Обоснование

Объявление класса

Члены класса, поля объекта/записи.

Методы класса

Классы на то и классы, что вызов можно сократить:

Печать тоже можно сделать методом

Редактирование объекта

Добавление элемента в объект классв.

Хотим добавить метод к классу

Для создания метода, нужно привязать фнкцию к объекту.

Жизненный цикл объекта

Конструктор

Объект начинает свою жизнь с вызова конструктора. Это позволяет построить корретный объект. Так, в нем принято присваивать переменным объекта предопределенные значения.

Переменная класса

Важно, что ранее объявленные переменные были именно частью self, а не класса. Иначе будет следующий эффект

Напечатать себя

Перегрузка операторов

Функтор

Частичное задание аргументов функции

Аккумулятор данных

Обратный вызов с аргументом

Сравнение

Хотим сделать что-то наподобие:

Множество!

Необходима возможность оперировать множеством.

Объединение множеств

Пересечение множеств

Вычитание

Добавление новых элементов

Удалить элемент

Мономы

Сработает и

Что то не то выдал

Но не сработают другие сравнения:

Арифметические действия

Можно и так:

А можно переопределить:

Наследование

Подмена вызова

В других языках такой метод называется виртуальным.