Skip to main content

Dicionários

  • Link - Replit

  • Os dicionários são um tipo útil que nos permite armazenar nossos dados em pares de chave e valor. Os próprios dicionários são mutáveis , mas as chaves de dicionário só podem ser tipos imutáveis

  • Usamos dicionários quando queremos acessar rapidamente dados adicionais associados a uma determinada chave. Uma ótima aplicação prática para dicionários é a memorização. Digamos que você queira economizar capacidade de computação e armazenar o resultado de uma função chamada com argumentos específicos. Os argumentos podem ser a chave, com o resultado armazenado como o valor. Na próxima vez que alguém chamar sua função, você pode verificar seu dicionário para ver se a resposta foi pré-calculada.

  • Procurar uma chave em um grande dicionário é extremamente rápido. Ao contrário das listas, não precisamos verificar cada item para ver se há uma correspondência.

Estrutura de dados dict
usoUse para armazenar dados em pares de chave e valor. As chaves usadas devem ser tipos de dados imutáveis
criaçãodict() ou {} (cria lista vazia) {key01: valor01, key02: valor02 } para varios items
métodos de buscarkey in meu_dicionario
métodos comunsmeu_dicionario[key] para obter o valor da key e lançar um KeyError se a key não estiver no dicionário. Use meu_dicionario.get(key) para falhar silenciosamente se a key não estiver dentro meu_dicionario. meu_dicionario.items()para todas as chaves, pares de valores, meu_dicionario.keys() para todas as chaves e meu_dicionario.values() para todos os valores.
ordem preservada?Não, items não podem ser acessados por indice, apenas por chave
mutável?Sim, é possivel adicionar ou remover items
pode ser reordenado?Não, por que dict não tem indices, apenas chaves
AçãoMétodoretornopossivel erro
remove todos os itens de um dicionáriomeu_dicionario.clear()
copia o dicionário original e os novos elementos colocados no novo dicionário não são acrescidos no originalmeu_dicionario.copy()
cria um novo dicionário a partir da sequência de elementos fornecidosmeu_dicionario.fromkeys(sequencia[, valor])
retorna o valor da chave especificadameu_dicionario.get('key')
exibe os itens de um dicionário, sendo que eles são exibidos em uma lista e cada par chave-valor são elementos de uma tuplameu_dicionario.items()
exibe uma lista de todas as chaves do dicionáriomeu_dicionario.keys()
remove e retorna o último par de elementos inserido no dicionáriomeu_dicionario.popitem()
retorna o valor de uma chave ou insere a chave com o valor no dicionáriomeu_dicionario.setdefault('key')
remove e retorna um elemento de um dicionário com a chave fornecidameu_dicionario.pop('key')
retorna todos os "values" do dicionáriomeu_dicionario.values()
adiciona o elemento (chave-valor) se a chave não estiver no dicionário. Se achar, atualiza o dicionáriomeu_dicionario.update()
  • Qualquer tipo de objeto, mutável ou imutável, pode ser usado como um valor, mas, assim como sets, os dictionários só podem usar tipos imutáveis ​​como chaves. Isso significa que você pode usar int, strou até mesmo tuplecomo uma chave, mas não uma set, listou outra dictionary.

  • Nosso dict contém áres key, value. Como um dict não possue indices, não podemos acessar os itens nele por posição. Em vez disso, para acessar os itens nela, usamos a meu_dicionario[key].

  • Se quisermos fornecer um valor padrão se a chave estiver ausente, também passamos um argumento opcional para o my_dict.get(key) como: my_dict.get(key, default_val)

  • Se você tentar colocar uma chave em um dicionário que já está lá, você acabará substituindo-a. Para evitar erros sutis, você pode verificar se uma determinada chave está em um dicionário com a in palavra - chave

  • Assim como com list e set, você pode atualizar os itens de um dicionário com os itens de outro dicionário.

  • Um cenário incrivelmente útil para dicionários é armazenar os valores em uma list ou outra sequência