Converter lista em dicionário em Python

Converter uma lista em um dicionário em Python não é tão difícil.

Vamos verificar diferentes maneiras de converter uma lista em um dicionário.

Introdução

Antes de entrar no tutorial, vamos ver um exemplo de conversão de uma lista em um dicionário. Teremos uma lista de tuplas (cada tupla é composta por dois elementos) ou apenas uma lista de elementos. Pegaremos ambas as entradas e as converteremos em dicionários.

Exemplos:

No exemplo a seguir, pegamos uma lista de tuplas e a convertemos em um dicionário. Tomamos o primeiro elemento de cada tupla como uma chave e o segundo elemento como um valor para o dicionário.

Entrada: list_one = [(‘a’, ‘A’), (‘b’, ‘B’), (‘c’, ‘C’)]

Saída: {‘a’: ‘A’, ‘b’: ‘B’, ‘c’: ‘C’}

No exemplo a seguir, pegamos uma lista de elementos e a convertemos em um dicionário com elementos alternativos como chave e valor. Daremos null à chave se não sobrar nenhum elemento para ela como chave (se a lista tiver um número ímpar de elementos).

  Como saber se alguém leu sua mensagem no WeChat

Entrada: list_one = [‘a’, ‘A’, ‘b’, ‘B’, ‘c’, ‘C’, ‘d’]

Output:{‘a’: ‘A’, ‘b’: ‘B’, ‘c’: ‘C’, ‘d’: Nenhum}

Vimos o objetivo do tutorial. E discutiremos ambos os exemplos de maneiras diferentes. Vamos começar com o primeiro exemplo.

Lista de Tuplas – Dicionário

Vamos ver como converter uma lista de tuplas em um dicionário. Você pode tentar escrever o código com a ajuda das etapas a seguir.

  • Inicialize a lista de tuplas com dados fictícios conforme os exemplos acima (certifique-se de que cada tupla na lista tenha exatamente dois elementos).
  • Passe a lista de tuplas para o método dict e ele armazena o resultado em uma nova variável.
  • Pronto, convertemos uma lista de tuplas em um dicionário com uma única linha de código.
# list of tuples
list_of_tuples = [('a', 'A'), ('b', 'B'), ('c', 'C')]

# converting to dictionary
list_of_tuples_dict = dict(list_of_tuples)

# printing the result dict
print(list_of_tuples_dict)

Você pode testar a saída do programa acima executando-a. Você obterá o resultado como vemos nos exemplos.

  Como impedir que selfies apareçam no álbum de selfies do iPhone

Lista – Dicionário

Vimos como converter uma lista de tuplas em um dicionário e é algo simples em Python. Nesta seção, veremos como converter uma lista simples em um dicionário.

Veja o segundo exemplo da primeira seção do tutorial para obter mais clareza.

Siga as etapas abaixo para escrever o código para o segundo exemplo.

Preenchemos o valor padrão como None para o elemento que não terá nenhum valor (uma lista contendo um número ímpar de elementos). Para isso, precisamos usar um método chamado zip_longest do módulo itertools.

  • Importe o módulo itertools e inicialize uma lista com um número ímpar de elementos dados nos exemplos.
  • Converta a lista em um iterável para evitar a repetição de pares de chave e valor no método zip_longest.
  • Agora, passe o iterável para o método zip_longest e fillvalue como None. Ele retornará um objeto zip.
    • Temos que passar o iterável duas vezes, pois ele obtém a chave e o valor dos dois iteráveis. No nosso caso, as chaves e os valores estão no mesmo iterável. Portanto, precisamos passá-lo duas vezes antes de fillvalue.
  • Converta o objeto no dicionário Python usando o método dict.
  • Imprima o resultado.
# importing the module
import itertools

# plain list with odd number of elements
plain_list = ['a', 'A', 'b', 'B', 'c', 'C', 'd']

# converting it to iterable to avoid repetition
plain_list_iter = iter(plain_list)

# converting the plain_list to dict
plain_list_dict_object = itertools.zip_longest(plain_list_iter, plain_list_iter, fillvalue=None)

# convert the zip_longest object to dict using `dict`
plain_list_dict = dict(plain_list_dict_object)

# print it
print(plain_list_dict)

Você pode dar o valor de preenchimento que quiser. Experimente coisas diferentes com ele. E execute o código para ver se estamos obtendo a saída exata mencionada no exemplo ou não.

  Como assistir a vídeos em velocidades mais rápidas

Conclusão

Espero que você tenha gostado de converter a lista em um dicionário. Vamos nos encontrar no próximo tutorial.

A seguir, aprenda como nivelar a lista em Python.

Codificação feliz 🙂

Gostou de ler o artigo? Que tal compartilhar com o mundo?