Este é um post diferente, é mais uma documentação. A intenção dele surgiu enquanto eu revisava o que havia estudado em Python e conceituando os assuntos, acabou surgindo.

O que estou trazendo aqui é apenas algo que estudei contendo uma explicação com o objetivo de fixar a matéria na cabeça. Como estou iniciando em Python, pensei que seria interessante documentar mais esse passo aqui.

Vamos para o assunto.

PYTHON E AS ESTRUTURAS BÁSICAS: LISTAS, TUPLAS E DICIONÁRIOS

Toda linguagem de programação possui uma estrutura básica para armazenar valores que serão utilizados em outros momentos dentro de um programa, função ou qualquer outro bloco e em Python não é diferente.

Essas estruturas são objetos que a linguagem Python utiliza para guardar dados dentro de uma sequência estruturada, ainda que não necessariamente, ordenada.

Cada uma dessas estruturas possuem uma forma de construção bem particular e dependendo, estamos passando para o interpretador o que aquela estrutura será, por exemplo:

Listas, Dicionários e Tuplas.
Listas, Dicionários e Tuplas.

Existem três estruturas na imagem acima, são elas:

  • Vermelha – temos uma lista e é construída com um colchete.
  • Amarelo – temos um dicionário e é construído com uma chave.
  • Cinza – temos uma tupla e é construída com parênteses.

Dentre os objetos, a tupla é o menos flexível em relação a manipulação de dados dentro da sua estrutura. Não podemos alterá-la de forma alguma, apenas trabalhar com slice, que é buscar pequenas sequências de dados.

Já os dicionários trabalham da mesma forma que um arquivo no formato JSON, utilizando o parâmetro chave e valor. Podemos manipular conforme desejarmos, desde que estejamos trabalhando com a sequência correta.

Similar aos dicionários, no quesito manipulação e flexibilidade, as listas são estruturas muito utilizadas dentro da linguagem, principalmente para iterações com a estrutura loop – for. Para a engenharia de dados, o domínio dessas três é fundamental para processos de ETL e análise.

Vamos ver algumas operações possíveis com as estruturas.

OPERAÇÕES COM LISTAS, DICIONÁRIOS E TUPLAS

Começando pelas listas, a operação mais básica que podemos realizar são as de slice; buscar um grupo menor de caracteres dentro de um grupo maior.

Slice em Listas.
Slice em Listas.

No código acima, partindo do índice 0 e parando no 4, a função de print mostrou os valores que vão de 1 até 4. Index em Python começa do 0.

É possível, por exemplo, criar uma lista a partir de uma sequência numérica e adicioná-la em uma estrutura vazia, veja.

Manipulação de listas com FOR.
Manipulação de listas com FOR.

Com a lista criada, podemos praticar os slices conforme desejamos:

Exploração de slice com listas em Python.
Exploração de slice com listas em Python.

A estrutura lógica do slice é a seguinte: 

  1. Primeiro valor → indica o ponto de início
  2. Segundo valor → indica em qual ponto irá parar
  3. Terceiro valor → se pulará valores dentro da sequência.

No exemplo abaixo, imprimimos do 1 ao 20 pulando 2 números, parando no 19.

Utilização do Slice.
Utilização do Slice.

Ao manipularmos listas, não é incomum utilizarmos métodos built-in da linguagem para alterar uma lista, veja.

Utilizando funções built-in para manipulação de listas.
Utilizando funções built-in para manipulação de listas.

Ao criar duas listas, uno uma com a outra utilizando o método extend em Python. Esse método estende a lista que o está “chamando”, podendo incluir todos os valores ou não.

TUPLAS

As tuplas são estruturas fixas que não podem sofrer nenhum tipo de manipulação que cause alteração em seus dados.

Diferente de uma lista, não me é permitido deletar um valor dentro de uma tupla.

Erro ao alterar a estrutura de uma tupla.
Erro ao alterar a estrutura de uma tupla.

Toda e qualquer manipulação de dados com a tupla deve-se primeiro convertê-la para uma lista para, após, voltar ao estado original.

Como alterar tuplas em Python. Utilizando listas como apoio.
Como alterar tuplas em Python. Utilizando listas como apoio.

DICIONÁRIO

Dicionários são estruturas que funcionam em pares de chave e valor dentro da linguagem de programação.

Dicionário em Python. Exemplo de construção.
Dicionário em Python. Exemplo de construção.

O interessante dos dicionários é a possibilidade de trabalhar tanto com as chaves e com os valores, de forma unitária:

Extraindo chave e valor do dicionário.
Extraindo chave e valor do dicionário.

Um ponto positivo dos dicionários é a versatilidade. Como podemos trabalhar com qualquer valor dentro das chaves, é possível utilizar outras estruturas, como:

Formas de criação de chaves em dicionários com Python.
Formas de criação de chaves em dicionários com Python.

Veja que na chaves Key4 e Key5, estou utilizando uma tupla e uma lista de valores armazenados.

Slice em dicionários.
Slice em dicionários.

E alguns métodos que utilizamos com listas, podem ser utilizados com dicionários, principalmente por não serem tão rígidos como as tuplas.

Funções built-in para manipulação do dicionário em Python.
Funções built-in para manipulação do dicionário em Python.

CONCLUSÃO

A ideia desse post foi tratar das bases fundamentais da linguagem Python, jogando luz na sua estrutura de dados.

Eu fiz esse artigo com o intuito de pavimentar o caminho para trazer transformações e manipulações de dados com PySpark e Pandas no blog.

Meu objetivo é tratar de ETL e ELT utilizando a linguagem Python com as ferramentas do mercado, por exemplo, Spark e futuramente, Airflow.

Como estou iniciando na linguagem, não me aprofundei muito, até por não ter tanto conhecimento, mas é temporário. Fiquem atentos e atualizados.

A medida que for evoluindo, trarei mais conteúdo a respeito até falar exclusivamente de tratamento de dados com Python.

Obrigado a todos, voltem sempre!

Olá!

Se chegou até aqui e gostou do artigo, deixe seu like e compartilhe em sua rede. Me ajude a alcançar mais leitores.

Não se esqueça de assinar e seguir o blog! Seja atualizado em primeira mão, sempre que sair uma nova publicação.

Siga nas redes sociais: