Advertisement
fahadkalil

fila_professor_py

Apr 7th, 2020
449
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.27 KB | None | 0 0
  1. class Fila:    
  2.     def __init__(self):
  3.         self._vet = []
  4.    
  5.     def enqueue(self, item): # enfileirar
  6.         self._vet.append(item)
  7.    
  8.     def dequeue(self): # desenfileirar
  9.         if not self.is_empty():
  10.             return self._vet.pop(0)
  11.         return None
  12.  
  13.     def front(self): # mostrar o 1o da fila, sem remover!
  14.         if not self.is_empty():
  15.             return self._vet[0]
  16.         return None
  17.                
  18.     def is_empty(self): # retorna se a fila esta vazia
  19.         if len(self._vet) == 0:
  20.             return True
  21.         return False
  22.        
  23.     def __len__(self):
  24.         return len(self._vet)
  25.  
  26.     def __str__(self): # representacao da fila como string
  27.         return str(self._vet)
  28.  
  29.  
  30. ## TESTES ##
  31. if __name__ == "__main__":
  32.     # Criando uma Fila
  33.     f = Fila()
  34.     assert len(f) == 0, "Deve ser zero!"
  35.  
  36.     # Enfileirando um item
  37.     f.enqueue(1)
  38.     assert len(f) == 1, "A fila deveria estar com 1 elemento"
  39.  
  40.     f.enqueue(2)
  41.     assert f.front() == 1, "1o elemento da fila deve ser 1"
  42.  
  43.     f.enqueue("imed")
  44.     f.enqueue(77)
  45.  
  46.     senha_chamada = str(f.dequeue())
  47.     chamadas = []
  48.     chamadas.append(senha_chamada)
  49.     print("Elemento removido: " + str(f.dequeue()))
  50.  
  51.    
  52.    
  53.     print(f)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement