yandex_music.utils.difference.Difference

class yandex_music.utils.difference.Operation
Базовые классы: enum.Enum

Класс перечисления типов операций для изменения плейлиста.

Примечание

Существует две операции: вставка, удаление.

DELETE = 'delete'
INSERT = 'insert'
class yandex_music.utils.difference.Difference
Базовые классы: object

Класс, представляющий обёртку над созданием данных для запроса изменения плейлиста.

Примечание

Результатом является перечень (массив) операций, которые будут применены к плейлисту.

Конечной разницей (набором операций) является JSON, который будет отправлен в теле запроса.

operations

Перечень операция для изменения плейлиста.

Type:list из dict
add_delete(from_: int, to: int) → yandex_music.utils.difference.Difference

Добавление операции удаления.

Примечание

Передаётся диапазон для удаления треков.

Параметры:
  • from (int) – С какого индекса.
  • to (int) – По какой индекс.
Результат:

Набор операций над плейлистом.

Тип результата:

yandex_music.utils.difference.Difference

add_insert(at: int, tracks: Union[dict, List[dict]]) → yandex_music.utils.difference.Difference

Добавление операции вставки.

Примечание

В tracks передаётся словарь с двумя ключами: id, album_id. Это нужно для формирования операции.

Параметры:
  • at (int) – Индекс для вставки.
  • tracks (dict | list: из :obj:`dict) – Словарь уникальными идентификаторами треков.
Результат:

Набор операций над плейлистом.

Тип результата:

yandex_music.utils.difference.Difference

to_json() → str

Сериализация всех операций над плейлистом.

Результат:Сформированное тело для запроса.
Тип результата:str