Estrutura de Dados em Python – Mega Tutorial Python

Neste artigo nós aprenderemos sobre Estrutura de Dados em Python.

Aprender a trabalhar com estruturas de dados é um ponto fundamental em qualquer linguagem de programação. Faz parte do dia a dia de um programador trabalhar com listas, dicionários, etc.

Por isso, hoje vamos falar sobre as principais estruturas de dados em Python!

Mega Tutorial Python

  1. Introdução
  2. Primeiros passos e o Hello World
  3. Tipos de Dados em Python
  4. Operadores e Expressões
  5. Trabalhando com Funções em Python
  6. Estrutura de Dados em Python (Este Artigo)
  7. Trabalhando com Módulos em Python
  8. Controle de Fluxo em Python
  9. O Python e o While Else
  10. Objetos em Python
  11. Representação Interna dos Objetos
  12. Entrada e Saída em Python
  13. Trabalhando com Exceções em Python
  14. Qual o Próximo Passo?
  15. Começando com Flask Framework
  16. Templates no Flask Framework
  17. Flask com Angular 6

O que é Estrutura de Dados em Python?

Bem, estruturas de dados são exatamente o que você está imaginando.

Estruturas de dados são basicamente estruturas nas quais você consegue guardar e manipular dados.

Simples né?!

Existem basicamente quatro principais maneiras de se estruturar dados em Python, sendo elas: list , dict , tuple  e set .

Estrutura de Dados em Python – List

As Listas em Python são estruturas de dados ordenados, onde você pode adicionar sequencias de dados, como por exemplo, uma fila.

Listas são objetos mutáveis, já que é possível remover e adicionar novos elementos nela. Ela é definida utilizando [  e ] .


Você vai se surpreender em como é fácil aprender trabalhar com listas em Python.

Listas possuem um conjunto de métodos que facilitam muito a manipulação dos seus dados. Alguns exemplos de métodos disponíveis são:

Listas em Python – Sort

Como é fácil de imaginar, o método sort  é utilizado para ordenar as listas.


Não é apenas com números que é possível ordenar uma lista. Aqui vai um exemplo alfanumérico:


Ao passar o parâmetro reverse=True , o método sort  ordena a sua lista do final para o começo.


É possível também utilizar o sort para ordenar listas com estruturas de dados mais complexas.

Aqui vai um exemplo utilizando o sort para ordenar uma lista de objetos em python:


É possível utilizar o método attrgetter  disponível em operator  também:

Listas em Python – Count

O método count é bem simples. É possível utilizar o método count para obter a quantidade de vezes que um dado elemento aparece na lista:

Listas em Python – Remove

Para remover itens de uma lista em python, nós podemos utilizar o método remove .

O método remove , como o nome já diz, remove o primeiro elemento correspondente de uma lista. Caso o elemento não seja encontrado, é lançado o erro ValueError .

Listas em Python – Append

Caso você queira adicionar novos itens no final da lista, basta utilizar o método append .

Listas em Python – Insert

O insert  funciona de maneira semelhante ao append . Ele também é utilizado para adicionar novos valores em uma determinada lista.

Porém, estes valores são adicionados na posição especificada no primeiro parâmetro. A utilização do insert  é dada a partir de: insert(indice, valor)

Listas em Python – Clear

E se por acaso você quisesse remover todos os itens de uma lista?

É justamente para isso que serve o método clear, ele remove todos os itens presentes na lista.

Estrutura de Dados em Python – Set

A estrutura de dados set é um simples agrupamento de dados únicos não ordenados.

É mais comum a sua utilização quando você quer garantir que não existam duplicidades em sua coleção, por exemplo.

É uma premissa do set também que a existência do dado seja mais importante do que a sua ordenação.


Como você pode notar no exemplo acima, caso informações duplicadas sejam informadas, elas não são adicionadas ao set.

Com o set também é possível realizar operações de grupos, como interseção, verificar se um valor está contido no set, etc.

Estrutura de Dados em Python – Dict

O dicionário é uma das estruturas de dados mais utilizadas em Python.

Eu diria que é praticamente impossível aprender Python sem aprender como trabalhar com dicionários.

O dicionário, ou dict, é uma estrutura de dados organizada em chave / valor.

Isso pode até parecer um pouco complicado de inicio, porém, imagine uma agenda telefônica. Como ela é estruturada?

Eu diria que pelo menos as mais simples, são estruturas em nome do contato e o número do telefone certo?

Pois bem, é assim que o dicionário funciona. O nome do contato seria a chave, e o número do telefone o valor.

Fácil, eu não disse?


Um fator importante aqui é: as chaves de um dicionário são obrigatoriamente imutáveis.

Lembra que eu falei que as listas são objetos mutáveis? Pois bem, olha o que acontece caso você tente utilizar uma lista como chave de um dicionário.


Mas lembre-se que essa restrição é apenas para as chaves. Os valores podem ser qualquer um, mutáveis ou não.

Apesar de dicionários serem uma estrutura de dados em Python extremamente utilizada, eles não possuem a gama de métodos para se trabalhar como as listas por exemplo.

Acessar valores de Dicionários em Python

Acessar um item de um dicionário é fácil, basta saber qual é a chave que você quer acessar:


Lembra que eu falei sobre chaves imutáveis? Não se esqueça que números são chaves válidas também!

Loop com Dicionários em Python

Ao realizarmos um loop for  em um dicionário, ele retornará todos as chaves, por ordem de inserção.


Porém é possível obter tanto a chave, quanto o valor em um for . Para isso, basta utilizar o método items() .

Estrutura de Dados em Python – Tuple

Tuplas são outra maneira de se organizar dados, tanto em Python como em outras linguagens de programação. Imagine uma tupla como uma espécie de lista imutável.

Pela sua natureza imutável, as tuplas não possuem os métodos para manipulação de dados que as listas possuem.

Tuplas podem ser declaradas como uma sequência de valores separadas por vírgulas.


Note que os parêntesis na declaração das tuplas são opcionais.


Assim como as outras estruturas de dados, uma tupla pode conter dados heterogêneos.

Acessando valores de Tuplas em Python

Para acessar os valores de uma tupla em Python, basta acessá-los pelo seu índice.

Loop com Tuplas em Python

Para realizar um loop for em tuplas, basta fazer igual você faria com uma lista:

Conclusão

Aprender a trabalhar com estrutura de dados em Python é algo fundamental.

Um programa normalmente se resume a uma série de manipulações de dados, a aprender como esses dados são estruturados na linguagem é algo de suma importância.

Caso tenha ficado alguma dúvida, não exite em perguntar nos comentários!

E ai, o que achou de aprender estrutura de dados em Python?!

Links Importantes

No Responses

  1. Pingback: Mega Tutorial Python - O Guia Definitivo 4 de dezembro de 2018
  2. Pingback: Operadores e Expressões em Python 5 de dezembro de 2018
  3. Pingback: Tipos de Dados em Python - Mega Tutorial Python 11 de dezembro de 2018

Leave a Reply