0% acharam este documento útil (0 voto)
46 visualizações3 páginas

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
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
46 visualizações3 páginas

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
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
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

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy