HOWTO · Python

Inicializar um dicionário Python

Este tutorial demonstra como inicializar um dicionário em python

Os dicionários Python são ordenados e alteráveis. Os dicionários não permitem o armazenamento de duplicatas.

Nas versões Python 3.6 e abaixo, os dicionários costumavam ser desordenados. Após a introdução do Python 3.7+, os dicionários são solicitados.

Este tutorial discutirá diferentes métodos para inicializar um dicionário em Python.

Use a sintaxe literal para inicializar um dicionário em Python

Um dicionário pode ser criado e inicializado usando chaves {} e contém chaves e valores.

O código a seguir usa literais para inicializar um dicionário Python.

dict1 = {"X": 2, "Y": 3, "Z": 4}
print(dict1)

Resultado:

{'X': 2, 'Y': 3, 'Z': 4}

Use o construtor dict() para inicializar um dicionário Python

O construtor dict() pode ser usado para inicializar dicionários a partir de argumentos de palavras-chave, ou um dicionário solitário e seus argumentos de palavras-chave, ou um iterável solitário de pares de valores-chave.

Podemos passar parâmetros no construtor dict() e criar um dicionário.

O código a seguir usa o construtor dict() para inicializar um dicionário em Python.

dict1 = dict(X=1, Y=2, Z=3)
print(dict1)

Resultado:

{'X': 1, 'Y': 2, 'Z': 3}

Use o método fromkeys() para inicializar um dicionário Python

A função fromkeys() pode ser usada se todas as chaves tiverem o mesmo valor.

O código a seguir usa o método fromkeys() para inicializar um dicionário Python.

dict1 = dict.fromkeys(["X", "Y", "Z"], 0)
print(dict1)

Resultado:

{'X': 0, 'Y': 0, 'Z': 0}

O dicionário pode ser inicializado com valores de todas as chaves como None, se nenhum valor particular for especificado na sintaxe.

dict1 = dict.fromkeys(["X", "Y", "Z"])
print(dict1)

Resultado:

{'X': None, 'Y': None, 'Z': None}

Use uma lista de tuplas para inicializar um dicionário Python

Uma lista de tuplas também pode ser usada para inicializar um dicionário em Python. Este método também usa o construtor dict() para implementar isso.

Uma tupla é uma coleção ordenada e imutável de objetos. Ele pode ser utilizado para estocar vários itens em uma única variável.

As listas são semelhantes às tuplas, com a única diferença de que as listas podem ser alteradas e as tuplas não permitem isso.

O código a seguir usa uma lista de tuplas para inicializar um dicionário em Python.

LOT = [("X", 5), ("Y", 6), ("Z", 8)]
dict1 = dict(LOT)
print(dict1)

Resultado:

{'X': 5, 'Y': 6, 'Z': 8}

Use duas listas para inicializar um dicionário Python

Neste caso, declaramos duas listas, onde os valores da primeira lista devem ser usados ​​como chaves, e a segunda lista deve ser usada como os valores do dicionário que iremos inicializar.

Para implementar as instruções acima, podemos usar a função zip(), que itera em ambas as listas fornecidas em paralelo.

A função zip() criará um par de valores-chave para todas as entradas em paralelo e criará com sucesso um objeto compactado, que pode então ser passado para o construtor dict() para criar um dicionário.

O código a seguir usa duas listas para inicializar um dicionário em Python.

if __name__ == "__main__":

    L1 = ["X", "Y", "Z"]
    L2 = [5, 6, 8]
    dict1 = dict(zip(L1, L2))
    print(dict1)

Resultado:

{'X': 5, 'Y': 6, 'Z': 8}

Nesse caso, L1 é a lista usada como chaves e L2 é usada como uma lista de valores para o dicionário inicializado.