– Módulos, Bibliotecas e Introdução à Orientação a Objeto – O que é Orientação a Objeto e Por que isso importa
É bem provável que você já tenha escutado a expressão “orientado a objetos”. Assim como outras linguagens de programação, o Python também é orientado a objetos.
E o que isso significa? Vamos primeiro usar um exemplo da vida real
O que pode ser feito com um objeto como o Celular?
Ligar, mandar mensagens, ver vídeos, etc
Com uma bicicleta?
Andar, empurrar, etc
Na programação, essas ações que podem ser executadas com os objetos são chamados de Métodos. Então para cada um dos objetos que temos é possível fazer algumas ações.
A gente vai ver isso melhor mais para frente. Fica tranquilo!
E o que isso significa? Vamos primeiro usar um exemplo da vida real
O que pode ser feito com um objeto como o Celular?
Ligar, mandar mensagens, ver vídeos, etc
Com uma bicicleta?
Andar, empurrar, etc
Na programação, essas ações que podem ser executadas com os objetos são chamados de Métodos. Então para cada um dos objetos que temos é possível fazer algumas ações.
A gente vai ver isso melhor mais para frente. Fica tranquilo!
– O que são módulos e qual a importância
Até agora só vimos os objetos e métodos que existem dentro do próprio Python, mas uma das principais “armas” dessa linguagem são as chamadas bibliotecas.
O que são bibliotecas? Elas são módulos prontos que podem ser importados para nossos projetos. Elas nos permitem executar códigos que nos demandariam muito tempo de desenvolvimento para executá-los.
Existem milhares de módulos disponíveis, ter todos eles integrados no Python nos demandaria muita memória.
Por isso, vamos precisar, sempre que necessário, importar esses módulos dentro de nossos projetos.
Para essa importação usaremos o comando: import
import webbrowser
#ou
import webbrowser as wb
Em alguns casos não é interessante importar toda a biblioteca mas apenas uma parte dela. Para isso vamos usar a estrutura abaixo:
From biblioteca import módulo
Vamos ver um exemplo ainda usando o webbrowser.
from webbrowser import open, open_new_tab
– Como ler um Módulo
Muito provalvemente o que você está se perguntando é:
1) Mas o que faz o webbrowser?
2) Como saber que o módulo que preciso é o webbrowser?
É impossível apresentarmos no curso todas a bibliotecas existentes.
O webbrowser é uma das milhares bibliotecas existentes. Essa, especificamente nos ajuda a interagir com a internet(abrir uma página Web por exemplo). No curso vamos apresentar as principais/mais famosas, mas uma ótima forma de descobrir bibliotecas é usando o nosso amigo GOOGLE.
A comunidade do Python é global e conseguimos achar resposta para qualquer dúvida que a gente venha a ter. Além disso, estamos aqui também para te ajudar OBVIAMENTE !☺
– Módulo time
Vamos aprofundar em um módulo bem recorrente em projetos de Python.
O módulo time é um dos vários módulos que nos ajudam a trabalhar com tempo e datas, mas é uma das mais famosas. Essa função, possui diversos métodos. Aqui, vamos ver algumas delas mas caso você tenha interesse em conhecer mais sobre ela você pode
acessar a documentação no link abaixo: https://docs.python.org/3/library/time.html
Vamos primeiro, importar nossa biblioteca
Usando o import time.
import time
Vamos ver os principais métodos da biblioteca time :
• EPOCH – É o marco zero do Python. 01/01/1970;
• time () – Nos retorna a diferença entre o tempo de hoje até a EPOCH em segundos
• ctime() – retorna uma string com a data no modelo UTC. UTC é um formato padrão utilizado pelo Python;
• sleep() – faz com que o python aguarde um tempo dado (em segundos) para executar a próxima linha de código;
• gmtime() – retorna as informações de data de forma detalhada;
Perceba que para usarmos os métodos sempre chamamos primeiramente a biblioteca.
Ou seja time.método
segundos_hoje = time.time()
print(segundos_hoje)
_______________
1602013004.6264832
#para esperar 5 segundos fazemos:
print('Começando')
time.sleep(5)
print('Rodou 5 segundos após')
____________
Começando
Rodou 5 segundos após
data_hoje = time.ctime()
#ou entao data_hoje = time.ctime(time())
print(data_hoje)
________________
Tue Oct 6 16:37:36 2020
data_atual = time.gmtime()
print(data_atual)
_____________________
time.struct_time(tm_year=2020, tm_mon=10, tm_mday=6, tm_hour=19, tm_min=42, tm_sec=38, tm_wday=1, tm_yday=280, tm_isdst=0)
– Módulo de Gráficos - Exibindo Gráficos no Python
Vamos para outra biblioteca, dessa vez para criação de gráficos. Uma das bibliotecas mais famosas é o matplotlib. Caso tenha mais interesse sobre a biblioteca, aqui está o link da documentação da biblioteca: https://matplotlib.org/stable/contents.html#
Vamos importar o matplotlib como plt. Para criarmos um gráfico basta usarmos os métodos abaixo:
• .plot(eixox,eixoy) – indica quais são os dados que formarão os gráfico;
• .ylabel() – Define o rótulo de dados do eixo Y;
• .xlabel() – Define o rótulo de dados do eixo X;
• .axis() – Define mínimo e máximo dos eixos X e Y. Nessa ordem.
• .show() – Plota o gráfico
vendas_meses = [1500, 1727, 1350, 999, 1050, 1027, 1022, 1500, 2000, 2362, 2100, 2762]
meses = ['jan', 'fev', 'mar', 'abr', 'mai', 'jun', 'jul', 'ago', 'set', 'out', 'nov', 'dez']
#plotar o gráfico da forma mais simples
import matplotlib.pyplot as plt
plt.plot(meses, vendas_meses)
plt.ylabel('Vendas')
plt.xlabel('Meses')
plt.axis([0, 12, 0, max(vendas_meses)+500])
plt.show()
__________________________________

Vamos entender um pouco melhor como são usados este métodos.
O método plot. Ao usarmos a ordem (meses, vendas_meses) , definimos que:
• meses estará no eixo X;
• venda_meses no eixo y;
Isso ocorre pois os argumentos deste método estabelece essa ordem.
Assim como vimos no módulo de funções, precisamos sempre lembrar que a ordem é
importante.
Já os métodos .ylabel e .xlabel funcionam da mesma forma, só alterando o eixo a que se referem. Respectivamente eixo y e eixo x. Perceba que ‘Vendas’ e ‘Meses’, são STRINGS e não se referem as variáveis meses e vendas_meses. São apenas rótulos do gráfico.
O próximo método utilizado é o .axis(). Este método nos permite definir os valores mínimos e máximo dos eixos x e y.
IMPORTANTE! Assim, como vimos no módulo de definição de funções, este método segue uma ordem específica.
1) Min eixo x;
2) Max eixo x;
3) Min eixo y;
4) Max eixo y.
Perceba que usamos a própria variável vendas_meses como parâmetro máximo do nosso
eixo y ao fazermos max(vendas_meses)+500. Por fim, usamos o método show() que nos fornece o gráfico definido por nós.
– Mais edições de Gráficos e Módulo Numpy
Outro método muito comum, principalmente quando estamos tratando dados estatisticamente, é o numpy. Segue abaixo o link da documentação:
Vamos usar o Numpy juntamente do Matplotlib que vimos anteriormente.
Para importar o Numpy vamos usar o comando abaixo:
Import numpy as np
Aqui vamos replicar o exemplo anterior, mas utilizando o numpy para gerar números aleatórios de vendas (linha 1). Já na linha 2 vamos usar o método .arange() para
criação de 50 meses que coreesponderão as vendas geradas aleatoriamente.
#importando o módulo numpy
import numpy as np
vendas = np.random.randint(1000, 3000, 50)
meses = np.arange(1, 51)
print(meses)
___________________
[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
49 50]
Vamos agora usar outras funcionalidades da nossa biblioteca matplotlib. Usando a mesma linha de código do gráfico anterior temos este gráfico apresentado ao lado.
No entanto, conforme falamos, nossa biblioteca tem dezenas, centenas de funcionalidades que podemos usar para melhor a apresentação do gráfico. É isso que vamos fazer nas próximas páginas.
plt.plot(meses, vendas)
plt.axis([0, 50, 0, max(vendas)+200])
plt.xlabel('Meses')
plt.ylabel('Vendas')
plt.show()
__________________

Começando pelo método .plot(), vamos alterar a cor da linha do gráfico usando a keyword color = . Perceba que apenas acrescentando uma keyword nos argumentos podemos alterar a cor .
Lembre-se!! Ao fazermos isso, estamos alterando a cor padrão (azul). Muito importante também que só foi possível usar a palavra chave RESPEITANDO que este argumento só foi utilizado APÓS a definição dos eixos X e Y.
#mudando a linha para apenas os marcadores
plt.plot(meses, vendas, color='red')
plt.axis([0, 50, 0, max(vendas)+200])
plt.xlabel('Meses')
plt.ylabel('Vendas')
plt.show()
_______________________

Aqui são inúmeras as possibilidades de alteração. Talvez você se pergunte:
Preciso decorar isso tudo??
A resposta é NÃO! As documentações existem para serem consultadas. Obviamente quanto mais você exercitar, mais você saberá executar sem pesquisar mas FAZ PARTE do processo usar as documentações durante a programação.
Seja ela em Python ou qualquer linguagem.
– Como instalar módulos novos
Como temos diversos pacotes existentes, pode ser que durante uma pesquisa, um pacote que você achou interessante não está instalado no seu computador.
Como saber que a biblioteca não está instalada. Vamos pegar o exemplo ao lado.
Ao tentar importar a biblioteca keyboard, recebi este erro ModuleNotFoundError.
Se você digitou corretamente o nome da biblioteca, isso significa que não temos isso instalado. Para resolver esse problema, vamos uma um instalador que já existe “embutido” dentro do Python, o PIP.
import keybord
-------------------------------------
ModuleNotFoundError: No module named 'keybord'
Usando o PIP, é possível, instalar, desinstalar pacotes. Caso você queira saber se um pacote está instalado, basta usar o comando abaixo em uma das células do Jupyter:
pip freeze
Caso não encontre na lista o pacote desejado, use o comando abaixo para instalar:
pip install nome da biblioteca
Nenhum comentário:
Postar um comentário