Acessar uma determinada função de uma classe dentro de outra classe.

3,419 views
Skip to first unread message

Roberto Guilherme Gomes

unread,
Dec 26, 2012, 5:19:45 PM12/26/12
to python...@googlegroups.com
Boa noite Amigos.

Estou realizando alguns testes para poder conhecer a linguagem de forma mais "íntima", porém, me deparei com uma dificuldade e nas pesquisas, leituras e testes que fiz, não tive sucesso.
Escrevi um código em que existe uma classe "principal()" com interface gráfica, e em determinada função desta aplicação, ocorre uma conexão com o banco de dados, porém, a função para fazer a conexão com o banco esta em uma classe diferente da "principal", ela se encontra em uma classe denominada "banco()".
Qual seria a forma correta de eu instanciar a classe que implementa a conexão com o banco de dados (classe "banco()") na classe "principal"("principal()") e como fazer a relação com a função dentro da classe do banco ("def conectaBanco()")?


Agradeço a atenção.


Atenciosamente,
Roberto Guilherme Gomes


Lucas Klassmann

unread,
Dec 26, 2012, 7:03:30 PM12/26/12
to python...@googlegroups.com
Boa noite Roberto,

Em primeiro lugar eu acho que o ideal para você, seria buscar algumas apostilas e tutoriais sobre a linguagem python.
-> http://www.python.org.br/wiki

A apostila do Luiz Eduardo Borges pode ser uma boa idéia, desde que você possua conhecimentos básicos de lógica e de Orientação a Objetos.
-> http://ark4n.files.wordpress.com/2010/01/python_para_desenvolvedores_2ed.pdf

Para responder a sua pergunta, eu até entendi, mas para que eu possa te exemplificar, você poderia enviar o código que você está querendo testar?

Envie pelo http://pastebin.com/

Abraço.
--
Lucas Klassmann

Roberto Guilherme Gomes

unread,
Dec 26, 2012, 8:27:51 PM12/26/12
to python...@googlegroups.com
Boa noite Lucas.
Obrigado pela atenção.

Então amigo, segue o código do programa em que estou encontrando a dificuldade.

http://bpaste.net/show/XofKdobYMWOXWSD8y2cg/

Obrigado pelas indicações de sites, já comecei a dar uma lida no livro do Luiz Eduardo Borges.


Atenciosamente,
Roberto Guilherme Gomes
--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
 
 

Lucas Klassmann

unread,
Dec 26, 2012, 8:44:28 PM12/26/12
to python...@googlegroups.com
Roberto,

O erro no seu caso, é que você está chamando o método ConectaBanco() diretamente com a classe Banco:

Banco.ConectaBanco() # A classe não pode chamar o método

Você deve criar uma instancia de objeto da classe Banco:

objeto = Banco()
objeto.ConectaBanco() # O objeto está apto a chamar o método


Existem outras formas de criar os métodos, statica e de classe.

O ideal é você procurar por apostila ou exemplos de Orientação a Objetos em Python para treinar esses conceitos.

No seu exemplo eu modifiquei a linha para como deveria instanciar e também sugeri fazer de uma outra forma, que seria fazer uma função apenas para conectar ao banco.

http://pastebin.com/96MTvujU

Abraços.


2012/12/26 Roberto Guilherme Gomes <robert...@gmail.com>



--
Lucas Klassmann
Desenvolvedor de Software

Email: lucaskl...@gmail.com
Web site: http://www.lucasklassmann.com
Reply all
Reply to author
Forward
0 new messages