Dictionary é uma estrutura de dados nativa do Python e mutável. Ela é parecida, em essência, com List, Set e Tuples. Porém, em vez de ser indexada por uma sequência de números, é indexada por keys e pode ser entendida como um array associativo. Em um nível abstrato, consiste em um key associado a um value. No Python, o Dictionary representa a implementação de uma hash-table.
O que são keys?
Como mostra a figura abaixo, keys são tipos de dados imutáveis (ou seja, que não podem ser alterados) e podem ser strings ou números. Já uma key não pode ser um tipo mutável, como uma lista, por exemplo. As keys são únicas dentro de um Dictionary e não podem ser duplicadas. Se uma key for usada mais de uma vez, as entradas seguintes substituem o valor anterior.
A key se conecta ao value, criando uma estrutura do tipo mapa. Por exemplo, se você remover as keys da figura, tudo o que sobra é uma estrutura de dados com uma sequência de números. Portanto, dicionários guardam pares key: value em cada posição.
Um Dictionary é representado por chaves {} contendo pares key: value separados por vírgula.
Criando um dictionary
Sintaxe
Para relembrar, aqui vai uma receita para criar um Dictionary:
No exemplo acima, tanto as keys quanto os values são strings.
Exemplo de criação de um dictionary
pop =[30.55,2.77,39.21]
countries =["afghanistan","albania","algeria"]Tecnologia
Vamos converter os dados de população para um Dictionary. Para criá-lo, você vai usar chaves. Em seguida, dentro das chaves, incluir vários pares key:value. Neste caso, as keys são os nomes dos países e os values são as respectivas populações.
A primeira key é afghanistan, e seu value correspondente é 30.55. Note os dois-pontos que separam a key do value. Vamos fazer o mesmo para os outros dois pares key:value e guardar o resultado na variável world.
Agora, para encontrar a população de albania, basta digitar world e, entre colchetes, a string albania. Em outras palavras, você passa a key entre colchetes e obtém o value correspondente.
world ={"afghanistan":30.55,"albania":2.77,"algeria":39.21}
world["albania"]Tecnologia
Essa abordagem, além de intuitiva, é muito eficiente, porque o Python consegue buscar essas keys de forma extremamente rápida, mesmo em dicionários enormes.
Exemplo interativo de criação de um dictionary
No exemplo abaixo, você vai usar as strings em countries e capitals para criar um Dictionary chamado europe com 4 pares key:value. Aqui, countries serão as keys e capitals serão os values. Atenção à grafia! Use letras minúsculas em tudo. Por fim, imprima europe para conferir se o resultado saiu como esperado.
# Definição de countries e capitals
countries =['spain','france','germany','norway']
capitals =['madrid','paris','berlin','oslo']# A partir das strings em countries e capitals, crie o dictionary europe
europe ={'spain':'madrid','france':'paris','germany':'berlin','norway':'oslo'}# Imprima europeprint(europe)Tecnologia
Saiba tudo sobre a compreensão de dicionário do Python: como você pode usá-la para criar dicionários, substituir loops for (aninhados) ou funções lambda por map(), filter() e reduce(), ...!
Aprenda sobre os conjuntos do Python: o que são, como criá-los, quando usá-los, funções incorporadas e sua relação com as operações da teoria dos conjuntos.
Descubra como escrever funções em Python reutilizáveis e eficientes. Domine parâmetros, instruções de retorno e temas avançados como funções lambda. Organize melhor seu código com main() e outras boas práticas.
Aprenda métodos eficientes para ordenar um dicionário por valores em Python. Descubra como ordenar em ordem crescente e decrescente e dicas extras para a ordenação por chave.
Mergulhe na ciência de dados com Python para analisar e visualizar seus dados de forma eficaz. Não precisa ter experiência ou conhecimento em programação.
Dictionary é uma estrutura de dados nativa do Python e mutável. Ela é parecida, em essência, com List, Set e Tuples. Porém, em vez de ser indexada por uma sequência de números, é indexada por
keyse pode ser entendida como um array associativo. Em um nível abstrato, consiste em umkeyassociado a umvalue. No Python, o Dictionary representa a implementação de umahash-table.O que são keys?
Como mostra a figura abaixo, keys são tipos de dados imutáveis (ou seja, que não podem ser alterados) e podem ser strings ou números. Já uma key não pode ser um tipo mutável, como uma lista, por exemplo. As keys são únicas dentro de um Dictionary e não podem ser duplicadas. Se uma key for usada mais de uma vez, as entradas seguintes substituem o valor anterior.
A
keyse conecta aovalue, criando uma estrutura do tipo mapa. Por exemplo, se você remover as keys da figura, tudo o que sobra é uma estrutura de dados com uma sequência de números. Portanto, dicionários guardam pareskey: valueem cada posição.Um Dictionary é representado por chaves
{}contendo pareskey: valueseparados por vírgula.Criando um dictionary
Sintaxe
Para relembrar, aqui vai uma receita para criar um Dictionary:
No exemplo acima, tanto as keys quanto os values são strings.
Exemplo de criação de um dictionary
Vamos converter os dados de população para um Dictionary. Para criá-lo, você vai usar chaves. Em seguida, dentro das chaves, incluir vários pares key:value. Neste caso, as keys são os nomes dos países e os values são as respectivas populações.
A primeira key é afghanistan, e seu value correspondente é 30.55. Note os dois-pontos que separam a key do value. Vamos fazer o mesmo para os outros dois pares key:value e guardar o resultado na variável
world.Agora, para encontrar a população de albania, basta digitar
worlde, entre colchetes, a string albania. Em outras palavras, você passa a key entre colchetes e obtém o value correspondente.Essa abordagem, além de intuitiva, é muito eficiente, porque o Python consegue buscar essas keys de forma extremamente rápida, mesmo em dicionários enormes.
Exemplo interativo de criação de um dictionary
No exemplo abaixo, você vai usar as strings em
countriesecapitalspara criar um Dictionary chamadoeuropecom 4 pares key:value. Aqui,countriesserão as keys ecapitalsserão os values. Atenção à grafia! Use letras minúsculas em tudo. Por fim, imprimaeuropepara conferir se o resultado saiu como esperado.Ao executar o código acima, o resultado será:
Faça o teste você mesmo.
Para saber mais sobre dicionários em Python, assista a este vídeo do nosso curso Intermediate Python.
Este conteúdo foi extraído do curso Intermediate Python da DataCamp, por Hugo Bowne-Anderson.