Advertisement
Guest User

Untitled

a guest
Jul 25th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.94 KB | None | 0 0
  1. class Aluno:
  2.     def __init__(self, num, nome):
  3.         self.num = num
  4.         self.nome = nome
  5.  
  6.     def __str__(self):
  7.         return self.nome
  8.  
  9. class GerenciadorDeSalas:
  10.     def __init__(self):
  11.         self.salas = {}
  12.  
  13.     def add_sala(self, id_sala):  # função para criar e adicionar SALAS
  14.         if id_sala not in self.salas:
  15.             self.salas[id_sala] = []  # cria uma nova sala com o nome passado em id_sala
  16.         else:
  17.             print('Sala já existente!')
  18.  
  19.     def add_alunos(self, aluno, id_sala): # -> O aluno é passado já criado para diminuir o acoplamento
  20.         if id_sala in self.salas:
  21.             self.salas[id_sala].append(aluno)
  22.         else:
  23.             print('Sala inexistente!')
  24.  
  25.     def get_salas(self):
  26.         return self.salas.keys()
  27.  
  28.     def get_alunos(self, id_sala):
  29.         return self.salas[id_sala]
  30.  
  31. gerenciador = GerenciadorDeSalas()
  32. gerenciador.add_sala('Sala-B9') # -> adiciona nova sala
  33. print(gerenciador.get_salas()) # -> mostra salas existentes
  34. print(gerenciador.get_alunos('Sala-B9')) # -> mostra alunos da sala apontada
  35. aluno = Aluno(10, 'Matheus') # -> cria um novo aluno
  36. gerenciador.add_alunos(aluno, 'Sala-B9') # -> adiciona aluno a Sala-B9
  37. print(gerenciador.get_alunos('Sala-B9')[0]) # -> mostra o primeiro aluno na Sala-B9
  38. # pode ser feito um for para todos os alunos assim: for aluno in gerenciador.get_alunos('Sala-B9'): ...
  39. aluno = Aluno(1, 'João') # -> cria um novo aluno
  40. gerenciador.add_alunos(aluno, 'Sala-A10') # -> tenta adicionar um aluno a Sala-A10 que não existe
  41. gerenciador.add_sala('Sala-B9') # -> tentando adicionar sala já existente, a sala não é sobrescrita
  42. gerenciador.add_sala('Sala-A10') # -> adiciona outra sala
  43. gerenciador.add_alunos(aluno, 'Sala-A10') # -> tenta adicionar um aluno a Sala-A10 que agora existe
  44. print(gerenciador.get_alunos('Sala-A10')[0]) # -> mostra o primeiro aluno na Sala-A10
  45. print(gerenciador.get_salas()) # -> mostra salas existentes
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement