Advertisement
Orrin19

Playlist

Oct 6th, 2023
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.24 KB | None | 0 0
  1. """Модуль плейлиста на основе связного списка"""
  2.  
  3.  
  4. from linked_list import LinkedList
  5.  
  6.  
  7. class PlayList(LinkedList):
  8.     """Плейлист"""
  9.  
  10.     def __init__(self):
  11.         LinkedList.__init__(self)
  12.         self.first_item = None
  13.         self.current_item = None
  14.  
  15.     @property
  16.     def current_item(self):
  17.         """Текущий трек"""
  18.         return self._current
  19.  
  20.     @current_item.setter
  21.     def current_item(self, value):
  22.         self._current = value
  23.  
  24.     def play_all(self):
  25.         """Запустить плейлист с начала"""
  26.         self.current_item = self.first_item
  27.  
  28.     def next_track(self):
  29.         """Запустить следующий трек"""
  30.         self.current_item = self.current_item.next_item
  31.  
  32.     def previous_track(self):
  33.         """Запустить предыдущий трек"""
  34.         self.current_item = self.current_item.previous_item
  35.  
  36.     def current(self):
  37.         """Получить текущий трек"""
  38.         return self.current_item.content
  39.  
  40.     def add(self, track):
  41.         """Добавить трек в плейлист"""
  42.         self.append(track)
  43.         if len(self) == 1:
  44.             self.play_all()
  45.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement