class slice(start, stop, step=None) Возвращает объект среза, представляющий набор индексов, указанных в range(start, stop, step). Аргументы start и step по умолчанию равны None.
Класс Number предоставляет метод для перехвата создания экземпляра (__init__), а также метод для отлавливания выражений вычитания (__sub__ ). Специальные методы подобного рода являются привязками, которые дают возможность соединяться со встроенными операциями:
class Number: def __init__(self, start): # Для Number (start) self.data = start def __sub__(self, other) : # Для экземпляр - other return Number(self.data - other) # Результатом будет новый экземпляр
X = Number(5) # Number.__init__(X, 5) Y = X - 2 # Number.__sub__ (X, 2) Y.data # Y является новым экземпляром Number
Метод конструктора __init__ является наиболее употребительным методом перегрузки операций в Python; он присутствует в большинстве классов и применяется для инициализации вновь созданного объекта экземпляра с использованием любых аргументов, указываемых после имени класса. Метод __sub__ исполняет роль бинарной операции аналогично методу __add__, перехватывая выражения вычитания и возвращая в качестве своего результата новый экземпляр класса (попутно выполняя __init__).
«Кортеж — это последовательность значений. Значения могут быть любого типа, а их индексы — целыми числами, и в этом отношении кортежи похожи на списки. Важное отличие заключается в том, что кортежи неизменяемы».
«Pandas складывает значения на позициях с метками B и C и возвращает значения NaN для оставшихся индексов (A, D и E). Любая арифметическая операция с участием значения NaN возвращает NaN: