Olá pessoal, estou fazendo uma aplicação de uma biblioteca e estou com problemas ao chamar as funções criadas nas classes Biblioteca e Usuario. As funções cadastrarUsuario e listarUsuarios da classe Biblioteca e listagemUsuarios da classe Usuario foram implementadas de forma correta, pois quando executo aplicacao2.py o código funciona, no entanto o problema é na aplicacao.py.
Caso forem executar a aplicacao2.py, basta digitar nome e senha, já na aplicacao.py, o primeiro passo é digitar a opção 10 e depois digitar nome e senha. Depois digitar a opção 12.
O código simplesmente não funciona na aplicacao.py, sendo que as funções citadas anteriormente funcionam na aplicação2.py
Vou deixar os códigos abaixo: (estou utilizando o Python 3.5.0)
from usuarios import Usuario
class Biblioteca:
def __init__(self):
self.nome = 'system'
self.senha = 'admin'
#self.login = login
self.logado = False
self.usuarios = []
def cadastrarUsuario(self, usuario):
self.usuarios.append(usuario)
def listarUsuarios(self):
for u in self.usuarios:
u.listagemUsuarios()
class Usuario:
def __init__(self, nome, senha):
self.nome = nome
self.senha = senha
def getNomeUsuario(self):
return self.nome
def getSenhaUsuario(self):
return self.senha
def listagemUsuarios(self):
print('Nome: %s' %self.nome)
from biblioteca import Biblioteca
from usuarios import Usuario
biblioteca = Biblioteca()
nome = input('\nDigite o nome: ')
senha = input('Digite a senha: ')
usuario = Usuario(nome, senha)
biblioteca.cadastrarUsuario(usuario)
biblioteca.listarUsuarios()
from biblioteca import Biblioteca
from usuarios import Usuario
def aplicacao():
print('\n**********MENU DE OPÇÕES**********')
print(' 0 - Sair do sistema')
print(' 1 - Listagem de livros')
print(' 2 - Listagem de autores')
print(' 3 - Busca de livro por título')
print(' 4 - Busca de livro por autor')
print(' 5 - Login')
print(' 6 - Logoff')
print(' 7 - Informações do usuário (logado)')
print(' 8 - Empréstimo')
print(' 9 - Devolução')
print('10 - Cadastro de usuário')
print('11 - Cadastro de livro')
print('12 - Listagem de usuários')
print('13 - Listagem de empréstimos')
print('**********************************')
while True:
aplicacao()
biblioteca = Biblioteca()
opcao = int(input('\nDigite a opção: '))
if opcao == 10:
nome = input('\nDigite o nome do usuário: ')
senha = input('Digite a senha: ')
usuario = Usuario(nome, senha)
biblioteca.cadastrarUsuario(usuario)
if opcao == 12:
print('\n********LISTAGEM DE USUÁRIOS********')
biblioteca.listarUsuarios()