0% acharam este documento útil (0 voto)
44 visualizações

Cheat Sheet - Python - 12 - Classes, Modulos e Imports

O documento discute aprendizagem baseada em competências de programação em Python, abordando tópicos como classes, módulos, imports e métodos. É explicado o conceito de classe como agrupamento de métodos e variáveis, e como criar objetos a partir de classes. Também são demonstrados exemplos de como criar classes com métodos e atributos, usar módulos e imports, e inicializar objetos com construtores.
Direitos autorais
© © All Rights Reserved
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
44 visualizações

Cheat Sheet - Python - 12 - Classes, Modulos e Imports

O documento discute aprendizagem baseada em competências de programação em Python, abordando tópicos como classes, módulos, imports e métodos. É explicado o conceito de classe como agrupamento de métodos e variáveis, e como criar objetos a partir de classes. Também são demonstrados exemplos de como criar classes com métodos e atributos, usar módulos e imports, e inicializar objetos com construtores.
Direitos autorais
© © All Rights Reserved
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 3

Aprendizagem baseada em competências.

Conteúdo:
Programar em Linguagem Estruturada • Classes na Cozinha
• Primeira Classe
• Classes c/ Método e Var
• Módulos e Import

Python •


Classes e Listas
Buscar Objetos em lista
Usando Índices e listas
Classes, Módulos e Imports Prof. Diego Braga

01 Classes na “Cozinha” 03 Classes com Métodos e Variáveis

➢ Linguagens como Java são baseadas em ➢ Na classe a seguir, temos uma classe Conta
Programação Orientada à Objetos (POO). com uma variável chamada cotacaoDolar e um
➢ A melhor forma para explicar o conceito de método chamado converterDolares, que por sua
Classes é usando conceitos da culinária. vez, recebe o valor em reais e dá um print no
Classe é como se fosse uma forma de um valor em dólares.
bolo, como o da imagem a seguir. ➢ O que fez esse self no método? Em
➢ Uma Classe em Python agrupa métodos métodos dentro de classes, obrigatório!
(funções) e variáveis (atributos). No exemplo ➢ Na linha 9, criamos um objeto
chamado novaConta
a seguir, entre as linhas 1 e 5, temos uma
➢ Na linha 10, chamamos o método que
classe chamada Conta, com 4 variáveis. Note
converte usando o objeto da linha 9
que, cada variável eu imagino que é uma
parte da forma do bolo (Classe).

➢ Como toda forma de bolo, a partir dela ➢ No código acima, nas linhas 6 e 7, imprimimos
geramos bolos. Traduzindo para o valor em reais de duas maneiras (sem variável
programação: e com variável). Prefiro a opção da linha 6, pois
➢ Classe = forma do bolo facilita a manutenção.
➢ Instância ou Objetos = bolo gerado a ➢ Se amanhã o valor do dólar for 5.0,
partir da forma ajusto apenas a variável da linha 3
➢ Note que, na linha 6, usamos
➢ Na linha 7 acima, temos um objeto (bolo)
self.cotacaoDolar
cuja variável se chama contaDiego. Na linha
➢ Self é obrigatório, lembre-se!
8, agora você já sabe o que é.
➢ E se, ao invés de imprimir (print), eu queira
02 Criando sua primeira classe retornar (melhor opção), como seria? Código a
seguir.
➢ Na imagem abaixo (linhas 1 e 2) temos a ➢ Note que, na linha 9, imprimimos o
criação de uma classe vazia (ou seja, sem nada) retorno do método
chamada Conta, enquanto que, na linha 4, ➢ Alternativamente, na linha 11,
criamos um objeto chamado novaConta. atribuímos o retorno a uma variável e
na linha 12, imprimimos a variável

Note que, classe inicia sempre com


Maiúsculo, enquanto métodos com
minúsculos. E, quando a classe ou
método estiver vazio, precisamos por a
palavra pass. Detalhes em
https://legacy.python.org/dev/peps/pep
-0008/
Continua...
Pagina 1
➢ Vamos agora criar uma classe mais próxima a
realidade? Uma classe geralmente tem, ao
menos, número da agência, número da conta,
titular e o saldo, concordam? Exemplo abaixo

➢ E, como faço para usar um módulo? No


código a seguir, na linha 1 importamos o
módulo calculadora por meio da palavra-
chave import
➢ Para usar, chamamos de uma das 3
seguintes maneira:
➢ modulo.método
➢ modulo.variável
➢ modulo.Classe

➢ Mas, o que “danado” é esse método init ? Ele


é um método que comumente chamamos de
inicializador ou construtor . Ou seja, com
ele, eu consigo já criar um projeto com os
valores, como vou mostrar a seguir. ➢ Se o módulo calculadora acima tivesse mais
➢ Na página anterior, sem construtor, outros métodos, chamaríamos da mesma
lembram que criamos um objeto da maneira que chamamos a soma.
seguinte maneira: novaConta = Conta()

No exemplo acima importamos o módulo


No construtor acima, a linha 7 que criamos
inteiro (ou seja, tudo que tiver dentro do
um construtor, que é um método com nome
módulo) Mas, se eu quiser importar apenas
__init__. Como todo método de classe, o
um método de um módulo? from modulo
primeiro parâmetro precisa ser o self.
import método
Após o self, temos 4 parâmetros (a,c,s,t)
que guardam os valores informados pelo
usuário. E, entre as linhas 8 e 11,
atribuímos as variáveis das linhas 2 a 5 os
Se você importa por método, podemos
valores recebidos pelos 4 parâmetros. Por
chamar soma diretamente. Ou seja, não
exemplo, na linha 8, a variável de classe
precisa fazer calculadora soma 2 2 como
agencia, guarda o valor do parâmetro a.
tínhamos feito anteriormente

➢ Enfim, agora, com um construtor criamos o ➢ Uma excelente ideia é, colocar as classes
objeto da maneira das linha 13 e 16 abaixo. dentro de módulos Note que, no código a
➢ E, nas linhas 14 e 17, apresentamos seguir, criamos um módulo chamado conta,
respectivamente o saldo de Abella que possui um construtor/inicializador e um
(100) e de Arthur (1000). método sacar Que, recebe um montante e
diminui do saldo.

04 Módulos e Import
➢ Até o presente momento, tudo o que fazemos
é dentro do arquivo main.py Conforme os
sistemas sejam maiores, isto não é escalável
Para isto, usamos o conceito de módulos.
➢ Em resumo, módulos são arquivos
com extensão py que podem
armazenar métodos, classes e
variáveis. ➢ No código abaixo, explico como usar o
➢ No exemplo a seguir, criamos um módulo criado anteriormente.
módulo chamado calculadora, que ➢ Linha 1: Importamos o módulo
basicamente é um arquivo inteiro
calculadora.py e possui um método ➢ Linha 3: Criamos um objeto para
soma. Daniel com saldo 1000
➢ Não tem self aqui porque não está ➢ Linha 4: Chamamos o método sacar
dentro de uma classe na variável novaConta
➢ Linha 5: Apresentamos o novo saldo
(900)

Pagina 2
05 Classes e Listas
➢ Agora que já sei como funcionam as classes,
posso adicionar um objeto à uma lista? Por
exemplo, termos uma lista de contas de uma
dada agência bancária? Sim, no exemplo a
seguir apresento este exemplo.

07 Usando Lista de Objetos


com índices

➢ Linha 1: Importamos o módulo inteiro


➢ Linha 3: Criamos uma lista normalmente
➢ Linha 3: Adicionamos “de cara” um objeto
para Diego
➢ Não era necessário, mas quis mostrar
como seria
➢ Linhas 5 e 6: Criamos 2 objetos
➢ Não foram inseridos à lista ainda
➢ Linhas 8 e 9: Adicionamos os 2 objetos a
lista com append
➢ Não mudou nada
➢ Linha 11: Apresentamos o tamanho da lista
(3)
➢ Linhas 13 e 14: Apresentamos todos os
objetos que estão na listas

06 Buscar objetos em lista


➢ Quando usamos listas com int , float , bool ou
str , a busca era bem simples. Agora, quando
a lista contém objetos, o negócio “é mais
embaixo”. O exemplo completo está a seguir.
➢ Linha 12: Criamos uma variável
vazia (None)
➢ Linha 15: Verifica se a variável
titular do objeto ( con ) é igual a
‘Diego’
➢ Linha 16: Atribuímos o objeto (con)
à variável da linha 12
➢ Linha 17: Se eu achar o objeto que
eu preciso, por que eu preciso ir até o
final da lista? “Meto” um break para
parar a busca.
➢ Linhas 19 e 20: Apresenta os dados
da conta buscada (de Diego)

Pagina 3

Você também pode gostar