logo da Fundação Bradesco e Escola Virtual

Você pode acessar o menu do curso a qualquer momento, pressionando Shift + 1 ou utilizando este atalho.

Para ir diretamente ao início do conteúdo, pressione Shift + 2 ou utilize este atalho.

Para acessar os links de navegação, pressione Shift + 3 ou utilize este atalho.

Módulo 2

Introdução à Orientação a Objetos

Recapitulando...

Recapitulando...

No módulo anterior concluímos a instalação do ambiente de desenvolvimento, com o download da ferramenta Anaconda.

Agora, você já tem os três recursos fundamentais instalados para iniciar a programação: Python, PyCharm e Anaconda.

Neste módulo, você vai conhecer os paradigmas da orientação a objetos e aprender a aplicá-los na linguagem Python.

Vamos começar?

Orientação a Objetos na Linguagem Python

A linguagem Python foi criada para o desenvolvimento orientado a objetos, o que facilita muito a compreensão de alguns conceitos, torna a programação mais simples de ser compreendida e facilita o trabalho em equipe!

Projetos desenvolvidos utilizando a Orientação a Objetos são mais estáveis, de fácil manutenção e sua reutilização é mais simples.

Na linguagem Python, quando iniciamos um projeto, apesar dele poder ser desenvolvido utilizando os conceitos de programação procedural, a linguagem já vai pré organizá-lo para a orientação a objetos, pois ele será organizado por meio de estruturas denominadas Classes que vão armazenar trechos de códigos relacionados entre si.

#PraCegoVer. A ilustração mostra uma lampada dividida em três cores. 1- A primeira cor é a amarela, com um ícone de programação e a palavra: Programação. 2 - A segunda cor é a azul, com um ícone de engrenagens e a palavra: Orientada. 3 - A terceira cor é a laranja, com um ícone de objetos e a palavra: Objetos.
#PraCegoVer. A ilustração mostra o desenho de um monitor, um teclado e um mouse de um desktop. Na tela há o ícone do Python, nas cores azul e amarela.

Ao utilizar a classe definida não é necessário compreender como os trechos dela foram desenvolvidos, basta utilizá-los por meio de um processo conhecido como Abstração.

A seguir, vamos conhecer um pouco mais sobre alguns desses termos utilizados na linguagem Python!

Técnicas de Orientação a Objetos no Python

Agora, vamos conhecer alguns conceitos de orientação a objetos que são muito importantes para melhor compreensão no desenvolvimento de projetos na linguagem Python.

Clique nos cartões para acessar o conteúdo.

  • Classes

    Definição do Objeto

    Conjunto de atributos e funções utilizado como modelo para criação dos objetos.

  • Objetos

    Instância de uma classe

    Variável que possui todas as características comuns à classe, porém, com valores diferentes em seus atributos.

  • Abstração

    Acesso às utilidades da classe

    Ação de utilizar mensagens para acessar os recursos de uma classe.

  • Atributos

    Características da classe

    Os atributos são características do elemento que a classe representa.

  • Funções

    Ações do objeto com retorno

    Função nativa do Python que retorna um valor declarado dentro da classe.

  • Métodos

    Ações do Objeto

    Função nativa do Python que não possui retorno declarado dentro de uma classe.

  • Exceção

    Tratamento de erros

    Controla o fluxo de execução durante um erro.

  • Mensagem

    Chamada a um atributo, método ou função.

  • Herança

    Super classe e Sub Classe

    Uma classe pode herdar atributos, métodos e/ou funções de outra.

  • Encapsulamento

    Níveis de acesso

    O encapsulamento permite que os atributos sejam vistos somente nas classes onde foram declarados, definindo o nível de acesso de atributos, métodos ou funções.

  • Polimorfismo

    Sobrescrita

    Escolher entre os atributos, métodos e/ou funções que sobrescreveram ou que foram sobrescritos.

Desenvolvimento de Projeto Prático

É muito importante conhecer os conceitos de programação, mas como colocar em prática tudo o que foi visto na teoria?

Para visualizarmos a prática de desenvolvimento vamos criar um pequeno projeto de uma loja virtual. Nele, teremos desde o controle de clientes até as vendas.

Para o desenvolvimento do projeto, vamos utilizar o ambiente de Anaconda Python, instalado anteriormente.

Projeto

Início doProjeto

Definindo o diagrama de classes.

Diretório doProjeto

Para melhor organização dos arquivos do projeto e compilar as classes é fundamental definir um diretório base para armazenamento dos arquivos.

DEV

Crie uma pasta no diretório raiz do seu computador (C:). Isso facilitará o acesso e a manutenção dos arquivos.

Criando o Projeto na IDE PyCharm

Iniciando a IDE
#PraCegoVer. A ilustração mostra a página inicial do PyCharm.

No menu Windows, localize a IDE PyCharm para iniciá-la.

Criando o projeto
#PraCegoVer. A ilustração mostra a página de Boas-vindas do PyCharm. No centro da imagem há três botões: New Project, Open e Get from VCS.

Para criar o novo projeto, selecione a opção New Project na tela inicial da IDE PyCharm.

Clique no botão para acessar o conteúdo.

Saiba Mais

Na janela Create Project é possível definir as configurações iniciais do projeto, como a versão do interpretador do projeto e o local de armazenamento dos arquivos.

Configuração do Novo Ambiente de Projeto

Acesse os itens de conteúdo do carrossel por meio deste atalho de entrada.

Clique nos botões para navegar pelos itens.

>> 1. Defina como local de armazenamento do projeto o diretório criado anteriormente. Adicione uma pasta denominada “app” ao diretório.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está o local de armazenamento. Location: C:\DEV/app

>>2. Escolha como interpretador a versão Anaconda, recém instalada.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está o interpretador da versão Anaconda.

>>3. Escolha a versão do Python que será utilizada.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está a versão do Python que será utilizada. Versão 3.9.

>>4. Desmarque a opção Create a main.py welcome script, para não criar a classe principal de forma automática.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está a opção Create a main.py welcome script.

>>5. Aguarde o interpretador criar o projeto.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está a linha de progresso da criação do projeto.

>>6. Após a criação do projeto, o seu diretório já aparece disponível na área de trabalho do PyCharm.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está a pasta APP. C:\DEV\APP

Você saiu do carrossel.

Criando Classes no Projeto

As classes em Python nos auxiliam na otimização de um projeto.

Em um projeto orientado a objetos utilizamos as classes para definição dos objetos.

#PraCegoVer. A imagem mostra a mão de uma pessoa branca, apontando para uma tela em 3D, com vários ícones. A tela está em tons azuis.

A seguir, vamos criar a primeira classe do nosso projeto!

Inicialmente, a função desta classe será apenas testar a compilação do programa, mas, no decorrer do curso, voltaremos a falar sobre ela.

Acesse os itens de conteúdo do carrossel por meio deste atalho de entrada.

Clique nos botões para navegar pelos itens.

>> 1. Para criar um arquivo Python, para a inserção de uma nova classe, clique com o botão direito do mouse sobre o diretório do projeto, menu New – Python File.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está a pasta app do projeto. Na sequência, está em destaque botão New e o botão Python File.

>>2. Na janela New Python file selecione a opção Python file.
Em seguida, digite o nome da classe Main.
Para finalizar, pressione a tecla Enter.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está a pasta New Python file. Na sequência, está em destaque botão Main e o botão Python File.

>>3. Com a classe Main ativa, digite o código para impressão de teste do projeto.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está a pasta Main.py. Na sequência, está em destaque a classe Main.py e o descritivo na tela de print ('Testando o projeto').

>>4. Para compilar a classe, clique com o botão direito sobre ela no projeto e acione a opção Run.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está a classe Main.py. Na sequência, está em destaque botão Main.py e o botão Run'Main'.

>>5. No console da IDE PyCharm deverá aparecer a mensagem adicionada ao código.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do PyCharm. Em evidência está o console IDE PyCharm com a mensagem que foi adicionada ao código.

C:\Users\anaconda\envs\APP\python.exe C:/DEV/app/Main.py

Testando o projeto

Linha vazia

Process finished with exit code 0

Você saiu do carrossel.

Nomenclaturas Python

Antes de iniciarmos o projeto de desenvolvimento é muito importante compreender a nomenclatura dos elementos que compõem um projeto:

Classes Variáveis Pacotes Objetos

A Comunidade Python determina algumas convenções para atribuir nomes a esses elementos.

Algumas convenções, caso ignoradas, não vão ocasionar erros ao código, mas manter um código organizado, seguindo as convenções, facilita muito o desenvolvimento e a compreensão do código, principalmente, quando o trabalho é realizado em equipe.

A seguir, vamos conhecer um pouco mais sobre essas nomenclaturas!

Definindo Nomenclatura para Elementos de um Projeto

Classes
  • Referente a caracteres, seguir o mesmo padrão de variáveis e objetos.
  • Sempre iniciar as classes com caracteres maiúsculos, inclusive as iniciais de nomes compostos:
    Exemplo: MinhaClasse()
Variáveise/ouObjetos
  • Utilizar somente caracteres e letras minúsculas.
  • No caso de variáveis com nome composto, utilizar o underline para separação das palavras.
  • Não iniciar o nome com números (podemos utilizar números no nome, mas não devemos iniciar com eles).
  • Não utilizar caracteres especiais.
  • Não utilizar espaçamento em branco.
  • Evitar utilizar os caracteres I e O.
Pacotes,Módulos eMétodos
  • Utilizar nomes pequenos.
  • Utilizar sempre caracteres minúsculos.
  • Utilizar o underline para unir nomes compostos.

Classes no Projeto Python

O desenvolvimento de uma aplicação envolve os mais diferentes tipos de informações, que são modeladas com estruturas que conhecemos como classes.

A partir das classes é possível criar objetos, ou seja, uma classe é um “molde” para a criação de objetos.

Podemos afirmar que classe é um Tipo Abstrato de Dados (TAD), ou seja, o código que define e implementa um novo tipo de informação.

Criação de Objetos

Antes de continuar o projeto Python, é importante fixar os principais conceitos da orientação a objetos.

Clique nos títulos da tabela para acessar o conteúdo.

Classe Objeto Instância

Clique nos títulos para acessar o conteúdo.

Podemos dizer que a classe é o projeto do objeto, contendo o código de programação.

É a execução do código de uma classe.

Quando executamos o código de uma classe é criado um novo objeto na memória.

Uma nova instância de um objeto é um tipo abstrato de informação de um novo tipo de dado.

Podemos dizer que a instância é o objeto sendo executado.

Quando criamos um novo objeto, afirmamos que estamos criando uma instância dele.

Criando Classes no Projeto Python

O desenvolvimento de um projeto Python envolve várias classes.

No decorrer do curso já criamos uma primeira classe denominada Main, porém, não especificamos como essa declaração foi feita.

Vamos compreender a criação de uma classe no projeto Python?

Primeiramente, vamos iniciar criando o arquivo para desenvolvimento do código da classe.

Acesse os itens de conteúdo do carrossel por meio deste atalho de entrada.

Clique nos botões para navegar pelos itens.

>>1. Clique com o botão direito sobre a pasta do projeto, menu New – Python File.

#PraCegoVer. A imagem mostra um recorte da tela de configuração do Python. Em evidência está a pasta do projeto Main.py. Na sequência, está em destaque a pasta app, depois o botão New e a opção Python File.

>>2. Na janela New Python file digite o nome Cliente para a classe. Para finalizar, pressione a tecla Enter.

#PraCegoVer. A imagem mostra um recorte da janela New Python file. Na sequência está opção Cliente e depois o arquivo Python file.

Você saiu do carrossel.

Entendendo a Estrutura da Classe

Após o desenvolvimento de um projeto Python, chegou a hora de entendermos a estrutura da classe.

Acesse os itens de conteúdo do carrossel por meio deste atalho de entrada.

Clique nos botões para navegar pelos itens.

>>1. Iniciamos com a palavra class.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está a palavra class.

class Cliente:

indentação pass

>>2. Adicionamos o nome da classe.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está a palavra Cliente.

>>3. O operador dois pontos faz parte da sintaxe da declaração de classe.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está o sinal de dois pontos.

>>4. Utilizamos a palavra reservada pass, quando nenhuma estrutura será definida no corpo dessa classe.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está a palavra pass.

>>5. Em seguida, podemos definir o corpo da classe.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está a palavra pass.

Você saiu do carrossel.

Declaração dos Membros da Classe

Utilizamos os membros da classe para manter uma mesma estrutura de tudo que pertence a determinada informação da classe.

Conforme já estudamos, classes são um tipo abstrato de dados, sendo assim, haverá valores e esses necessitam de funções específicas para serem manipulados.

Temos dois tipos básicos de membros que compõe uma classe:

Atributos(Propriedades)

Os atributos armazenam as características de uma classe.

Os atributos são as declarações de variáveis da classe.

Métodos

São ações da classe, suas funções.

Representam os estados e ações dos objetos quando instanciados.

Definindo o Método Construtor

O Método Construtor é definido de forma implícita ou explícita por todas as classes e, como o próprio nome já cita, é utilizado para construir o objeto.

Todas as vezes que um objeto estiver sendo criado (instanciado) é por meio do Construtor que ele será inicializado.

Este método é invocado, automaticamente, pela máquina virtual do Python todas as vezes que um objeto é criado.

Inserindo o Método Construtor na Classe Cliente

Acesse os itens de conteúdo do carrossel por meio deste atalho de entrada.

Clique nos botões para navegar pelos itens.

>>1. A palavra def é utilizada para a declaração de método.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está a palavra def.

class Cliente:

indentação def __init__(self):

indentação dupla pass

>>2. Para definir o construtor adicionamos: underline, underline, a palavra reservada init, underline, underline. O init() é um método especial que será chamado sempre que criarmos um objeto da classe.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está a palavra _ _init_ _.

>>3. Incluímos o parâmetro obrigatório self, que está presente em todos os métodos. Resumidamente, podemos afirmar que o parâmetro self, neste momento, exporta as características do objeto.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está a palavra (self).

>>4. Para finalizar, adicionamos dois pontos (:).

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está o sinal de dois pontos.

Você saiu do carrossel.

Clique no botão para acessar o conteúdo.

Importante

Todo método Python tem self como primeiro parâmetro.

A palavra reservada representa o objeto em si, portanto, sempre que quisermos especificar atributos de objetos, devemos associá-lo à palavra reservada self.

Atributos da Classe

Lembre-se de que os atributos de uma classe representam as características que ela possui.

Atributo Atributo Atributo Atributo Atributo Classe

Agora, vamos ver como adicionar atributos, modificar uma classe e personalizar o Método Construtor.

Como Adicionar Atributos à Classe?

Para adicionar atributos a uma classe, basta definir o nome do atributo acompanhado da palavra reservada self, no método especial denominado _ _init_ _ do Método Construtor.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py.

class Cliente:

indentação def _ _init_ _(self):

Linha vazia

indentação dupla self.nome

indentação dupla self.telefone

Como Modificar a Classe?

Vamos adicionar dois atributos à classe Cliente.

Primeiramente, remova a palavra reservada pass.

Em seguida, insira o código correspondente aos atributos.

Observe que o recuo indica que os atributos pertencem ao Método Construtor da classe.

Como Personalizar o Método Construtor?

Como já vimos, o Método Construtor tem a finalidade de estabelecer os valores obrigatórios para construção de um novo objeto.

O Método Construtor da classe pode conter um conjunto de parâmetros. Com isso, podemos determinar os valores para inicialização dos atributos.

Isso garante um melhor funcionamento de toda a estrutura do objeto, obrigando ao programador determinar valores default no momento da inicialização do objeto.

Acesse os itens de conteúdo do carrossel por meio deste atalho de entrada.

Clique nos botões para navegar pelos itens.

>>1. Com o parâmetro self são passados os parâmetros que serão utilizados para inicialização dos atributos.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está o parâmetro self (self, n, fone):

class Cliente:

indentação def _ _init_ _(self, n, fone):

Linha vazia

indentação dupla self.nome = n

indentação dupla self.telefone = fone

>>2. Inicializamos os atributos com os valores passados por parâmetro.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está o parâmetro self. self.nome = n. self.telefone = fone

Você saiu do carrossel.

Clique no botão para acessar o conteúdo.

Importante

Na linguagem Python não é recomendável criar mais de um Método Construtor para a classe.

Instanciando Objetos

Na linguagem Python, as classes são utilizadas para definição dos objetos.

Podemos afirmar que a classe é o nosso código e, para que esse código seja utilizado, precisamos criar os objetos, assim, criamos instâncias do objeto.

Na orientação a objetos, instância e objetos são sinônimos.

#PraCegoVer. A ilustração mostra um notebook. Em sua tela estão vários códigos de programação.

Objetos no Python

#PraCegoVer. A ilustração mostra um notebook, em sua tela está a palavra Figure e as iniciais OOP.

Na linguagem Python, todo objeto criado possui um código de identificação composto por um número inteiro não negativo, conhecido como ID.

Assim, as instâncias de objetos são diferenciadas.

Esse ID diferencia objeto e atributos deste objeto.

Criando Referência de Classes

Para instanciar o objeto de uma classe para outra, devemos criar a referência da classe que será instanciada.

Acesse os itens de conteúdo do carrossel por meio deste atalho de entrada.

Clique nos botões para navegar pelos itens.

>>1. Primeiramente, abra a classe Main.py criada no início do projeto e disponível no menu.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente.py. Em destaque está a classe Main.py

>>2. A classe Main não possui atributos.
Utilizamos apenas a palavra reservada pass.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente, com a classe Main. Em destaque está o parâmetro: class Main: pass

class Main:

indentação pass

Linha vazia

print("Testando o projeto")

Linha Vazia

from Cliente import Cliente

>>3. Adicionamos a linha de código correspondente à importação da classe.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente, com a classe Main. Em destaque está o parâmetro: from Cliente import Cliente.

>>4. Agora, vamos interpretar o código de importação da classe?
A palavra reservada from é utilizada para indicar qual classe será importada...

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente, com a classe Main. Em destaque está o parâmetro from.

>>5. ... e a palavra reservada import é a referência de qual classe será utilizada para a criação de objetos em um arquivo à parte.

#PraCegoVer. A imagem mostra um recorte da tela de console do projeto Cliente, com a classe Main. Em destaque está o parâmetro import.

Você saiu do carrossel.

Instanciando um Novo Objeto

Acesse os itens de conteúdo do carrossel por meio deste atalho de entrada.

Clique nos botões para navegar pelos itens.

>>1. Após criarmos a referência da classe, adicionamos, na linha seguinte, o novo objeto, passando por parâmetro os valores para inicialização dos atributos.

#PraCegoVer. A imagem mostra um recorte do console, com destaque em c1= Cliente('João', '114444-2222')

class Main:

indentação pass

Linha vazia

print("Testando o projeto")

Linha Vazia

from Cliente import Cliente

Linha Vazia

c1= Cliente ("João", "114444-2222")

>>2. A declaração de um novo objeto funciona como declarar uma nova variável.

#PraCegoVer. A imagem mostra um recorte do console, com destaque para c1.

>>3. Passamos o nome da classe que será instanciada.

#PraCegoVer. A imagem mostra um recorte do console, com destaque na palavra Cliente.

>>4. Passamos todos os atributos criados no Método Construtor da classe Cliente.

Você saiu do carrossel.

Testando o Projeto

Para verificarmos a prática de instanciar objetos, vamos acrescentar os comandos para impressão e, em seguida, compilar o nosso código.

Acesse os itens de conteúdo do carrossel por meio deste atalho de entrada.

Clique nos botões para navegar pelos itens.

>>1. A primeira linha imprime a referência do objeto (id).
Já a segunda linha imprime o conteúdo adicionado.

#PraCegoVer. A imagem mostra um recorte do console, com destaque para: print(c1) print(c1.nome,' e ', c1.telefone)

class Main:

indentação pass

Linha vazia

print("Testando o projeto")

Linha Vazia

from Cliente import Cliente

Linha Vazia

c1= Cliente ("João", "114444-2222")

Linha Vazia

print(c1)

print(c1.nome," c ",c1.telefone)

>>2. Para compilar, selecione a classe Main.
Em seguida, pressione o botão para compilar o código.

#PraCegoVer. A imagem mostra um recorte do console, com destaque para Main.

>>3. Será apresentado o ID do objeto.

#PraCegoVer. A imagem mostra um recorte do console, com destaque para: <Cliente.Cliente object at 0x0000019C97C68640>

C:\Users\anaconda\envs\APP\python.exe C:/DEV/App/Main.py

Testando o projeto

<Cliente.Cliente object at 0x0000019C97C68640>

João e 114444-2222

Linha vazia

Process finished with exit code 0

>>4. E será exibido o conteúdo do objeto.

#PraCegoVer. A imagem mostra um recorte do console, com destaque para: João e 114444-2222

Você saiu do carrossel.

Na prática

Projeto Controle Bancário

Vamos iniciar um projeto de controle bancário!

O objetivo do projeto é o desenvolvimento orientado a objetos para a execução de tarefas do cotidiano bancário, como saque, consulta de saldo e depósito.

Durante esta aula, já desenvolvemos a classe Cliente e seus atributos. Agora, vamos desenvolver a classe Conta, que será definida recebendo o objeto Cliente, além dos atributos “número” e “saldo”.

Classe Conta

Para desenvolver a classe Conta, crie um novo arquivo Python, por meio do menu File-New. Na caixa de texto New, escolha a opção Python File. Digite o nome Conta e pressione a tecla Enter, para finalizar.

Logo após, adicione a codificação inicial para a classe:

#PraCegoVer. A imagem mostra um recorte da tela de configuração do Python, com a classe Conta.py.

class Conta:

indentação def _ _init_ _(self, titular, numero, saldo):

indentação dupla self.saldo=0

indentação dupla self.numero=numero

indentação dupla self.titular=titular

Testando o Projeto

Para verificar o funcionamento do projeto até o momento, modifique a classe Main, trazendo os dois objetos criados:

#PraCegoVer. A imagem mostra um recorte da tela de configuração do Python, com a classe Main.py.

class Main:

indentação pass

Linha vazia

print("Testando o projeto")

Linha Vazia

from Cliente import Cliente

Linha Vazia

from Conta import Conta

Linha Vazia

c1= Cliente("João, "114444-2222")

conta=Conta(c1.nome,6565,0)

Linha Vazia

print(conta.titular," Numero: ",conta.numero, "Seu Saldo: ", conta.saldo)

Analise o Resultado

Observe que, ao compilar o projeto (por meio da classe Main), as informações são impressas e a informação relacionada ao titular é trazida do objeto Cliente:

#PraCegoVer. A imagem mostra um recorte da tela de configuração do Python, com a classe Main.

C:\Users\anaconda\envs\APP\python.exe C:/DEV/App/Main.py

Testando o projeto

João numero: 6565 Seu Saldo: 0

Linha Vazia

Process finished with exit code 0

Etapa Concluída

Até aqui conseguimos compreender sobre o conceito de Orientação a Objetos aplicado na linguagem Python.

Criamos uma classe com seus respectivos atributos, adicionamos métodos e, por fim, instanciamos objetos.

No próximo módulo, você vai conhecer sobre o conceito de encapsulamento de dados, alterando a visibilidade dos membros e aplicando os métodos setter e getter.

O que aprendemos neste módulo

Orientação a Objetos
Ambiente Anaconda
Classes no projeto Python
Método Construtor
Você concluiu o Módulo 2! Siga para o Módulo 3 para dar continuidade ao curso.