Blog

Postado em em 13 de novembro de 2021

Python Pickle – Perpetuar Objetos no Python

Python Pickle – Aprenda a perpetuar objetos no Python! Como salvar pedaços de códigos para usar depois sempre que precisar!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

Salvar Pedaços de Código Python Pickle

Você sabia que é possível salvar pedaços de código no Python? Eu quero te mostrar como armazenar um objeto no Python para que você possa utilizar posteriormente.

Isso será feito com o Python Pickle que é uma ferramenta que já vem instalada no Python, então você não vai precisar instalar nada!

Perpetuar Objetos no Python

Por que esse método que vamos utilizar é útil e pode te ajudar? Você já deve criado códigos grandes ou até criado uma inteligência artificial e sabe que isso demorar a rodar.

Então para que você não tenha que perder tempo rodando todo o seu código de novo, sempre que precisar do resultado ou do modelo de inteligência artificial, é que vamos utilizar o Pickle!

Essa ferramenta vai te permitir pegar um objeto no Python e salvar ele em um arquivo e sempre que você quiser utilizá-lo vai poder carregar ele dentro de outro arquivo para que ele funcione normalmente.

lista = ["produtoA", "produtoB", "produtoC"]

import pickle

with open("lista.pkl", "wb") as arquivo:
	pickle.dump(lista, arquivo)

Aqui nós estamos criando uma lista bem simples com produtos para te mostrar como funciona essa ferramenta.

Em seguida vamos importar a biblioteca pickle e por fim nós vamos abrir o arquivo lista.pkl com a estrutura with para abrir arquivos.

Como nós não temos esse arquivo o Python vai criar o arquivo lista com a extensão pkl que é a extensão do pickle.

Depois nós vamos utilizar o método pickle.dump para informar o que nós vamos armazenar e onde vamos armazenar.

Isso quer dizer que estamos armazenando a nossa lista no arquivo que acabamos de criar!

Depois disso você vai notar que na pasta onde está o seu código vai ser criado o arquivo lista.pkl que é exatamente o arquivo que contém as informações que acabamos de guardar.

Agora nós vamos fazer o seguinte, vamos pegar esse arquivo e vamos colocar em outra pasta com um arquivo de Python do zero.

Isso quer dizer que não temos relação entre os 2 arquivos, então vamos escrever esse segundo código do zero para utilizar esse arquivo que criamos.

import pickle

with open("lista.pkl", "wb") as arquivo:
	pickle.dump(lista, arquivo)

print(lista)
Perpetuar Objetos no Python
Lendo o arquivo no formato pickle

Aqui vamos importar novamente o pickle, pois estamos em outro arquivo e precisamos importar a biblioteca para poder usá-la.

Em seguida vamos utilizar a estrutura with para poder abrir o arquivo. Você vai perceber que na primeira vez nós utilizamos “wb” que é para escrever em binário.

E agora nós vamos utilizar o “rb” que é para ler em binário, então vamos ler esse arquivo e vamos atribuir o conteúdo dele a uma variável qualquer.

Depois basta printar essa variável para que veja que temos exatamente o mesmo conteúdo que foi guardado,

Com isso nós podemos perpetuar objetos no Python para utilizar em outros códigos de uma forma muito fácil sem ter que ficar rodando o código várias vezes.

Agora nós vamos para outro exemplo utilizando um código para criar inteligência artificial, será que podemos fazer o mesmo procedimento?

Não vamos poder armazenar só variáveis, mas também modelos de inteligência artificial e é o que nós vamos fazer agora.

OBS: Os arquivos estão disponíveis para download, assim facilita e você consegue acompanhar de forma mais fácil. Caso você não esteja utilizando o Jupyter você terá que instalar 3 bibliotecas, que são: matplotlib, seaborn e o scikit-learn.

import pandas as pd

tabela = pd.read_csv("novos.csv")

previsao = modelo_arvoredecisao.predict(tabela)
display(tabela)
print(previsao)

Vamos para a parte do código que vai nos interessar no momento, lembrando que não vamos entrar em detalhes nesse código da inteligência artificial, mas o código está disponível para download.

Essa variável modelo_arvoredecisao é um modelo de inteligência artificial que olha informações de investimentos em propaganda em TV, rádio e jornal e consegue prever quanto vão ser as vendas de acordo com essas informações.

Ao rodar esse código nós vamos ter esse modelo pronto, só que para que você não tenha que sempre esperar esse código todo rodar para gerar esse modelo é que nós vamos utilizar o pickle.

import pickle

with open("lista.pkl", "wb") as arquivo:
	pickle.dump(modelo_arvoredecisao, arquivo)

Vamos fazer exatamente o mesmo procedimento que fizemos com a nossa lista no exemplo anterior, só que agora com a variável que está guardando o nosso modelo de inteligência artificial.

Isso quer dizer que nesse arquivo nós já temos uma inteligência artificial já treinada, então já foi criada, treinada e já está pronta para fazer previsões.

Então o que vamos ter que fazer é o que já vimos também no exemplo anterior, que é um código bem simples.

import pickle

with open("lista.pkl", "rb") as arquivo:
	modelo_arvoredecisao = pickle.load(arquivo)

import pandas as pd

tabela = pd.read_csv("novos.csv")

previsao = modelo_arvoredecisao.predict(tabela)
display(tabela)
print(previsao)
Perpetuar Objetos no Python
Abrindo e executando o modelo da inteligência artificial já treinado

Nós vamos importar a biblioteca pickle, abrir o arquivo e atribuir o conteúdo a uma variável. Depois basta utilizar a biblioteca pandas para fazer nossas análises com base no arquivo “novos.csv”.

Depois disso nós vamos ter exatamente o mesmo resultado, pois a base de dados é a mesma que utilizamos no outro código.

Isso quer dizer que para esse código nós não tivemos que criar nem que treinar a inteligência artificial, pois isso já tinha sido feito.

Então nós vamos “pular” essas etapas e partir direto para a análise desses dados e obter a nossa previsão.

Agora você já sabe como perpetuar objeto e como perpetuar modelos de inteligência artificial no Python utilizando o Pickle.

Conclusão de Como Perpetuar Objetos no Python

Nessa aula eu te mostrei uma ferramenta muito útil dentro do Python que te permite perpetuar objetos no Python e até mesmo modelos de inteligência artificial.

Dessa forma você não precisa ficar rodando o seu código para obter o resultado desejado e utilizá-lo.

Basta rodar uma vez e salvar o objeto ou modelo dentro de um arquivo para utilizar em outros códigos!

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso básico gratuito?

Quer sair do zero no Python e virar uma referência na sua empresa? Inscreva-se agora mesmo no Python Impressionador