Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Aluno:
- def __init__(self, num, nome):
- self.num = num
- self.nome = nome
- def __str__(self):
- return self.nome
- class GerenciadorDeSalas:
- def __init__(self):
- self.salas = {}
- def add_sala(self, id_sala): # função para criar e adicionar SALAS
- if id_sala not in self.salas:
- self.salas[id_sala] = [] # cria uma nova sala com o nome passado em id_sala
- else:
- print('Sala já existente!')
- def add_alunos(self, aluno, id_sala): # -> O aluno é passado já criado para diminuir o acoplamento
- if id_sala in self.salas:
- self.salas[id_sala].append(aluno)
- else:
- print('Sala inexistente!')
- def get_salas(self):
- return self.salas.keys()
- def get_alunos(self, id_sala):
- return self.salas[id_sala]
- gerenciador = GerenciadorDeSalas()
- gerenciador.add_sala('Sala-B9') # -> adiciona nova sala
- print(gerenciador.get_salas()) # -> mostra salas existentes
- print(gerenciador.get_alunos('Sala-B9')) # -> mostra alunos da sala apontada
- aluno = Aluno(10, 'Matheus') # -> cria um novo aluno
- gerenciador.add_alunos(aluno, 'Sala-B9') # -> adiciona aluno a Sala-B9
- print(gerenciador.get_alunos('Sala-B9')[0]) # -> mostra o primeiro aluno na Sala-B9
- # pode ser feito um for para todos os alunos assim: for aluno in gerenciador.get_alunos('Sala-B9'): ...
- aluno = Aluno(1, 'João') # -> cria um novo aluno
- gerenciador.add_alunos(aluno, 'Sala-A10') # -> tenta adicionar um aluno a Sala-A10 que não existe
- gerenciador.add_sala('Sala-B9') # -> tentando adicionar sala já existente, a sala não é sobrescrita
- gerenciador.add_sala('Sala-A10') # -> adiciona outra sala
- gerenciador.add_alunos(aluno, 'Sala-A10') # -> tenta adicionar um aluno a Sala-A10 que agora existe
- print(gerenciador.get_alunos('Sala-A10')[0]) # -> mostra o primeiro aluno na Sala-A10
- print(gerenciador.get_salas()) # -> mostra salas existentes
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement