Como criar um dicionário em Python (literais e construtores)
Aprenda como criar um dicionário em Python. Entenda a sintaxe literal, o construtor de dict, as compreensões de dict e os inicializadores de valores-chave.
Visão geral
Os dicionários são um dos tipos de dados integrados mais poderosos e amplamente utilizados em Python. Um dicionário é uma coleção mutável e ordenada (desdePython 3.7) de pares chave-valor, onde cada chave deve ser única e hashável (por exemplo, strings, números ou tuplas). Os dicionários permitem que você execute operações de pesquisa com complexidade de tempo de caso médio O(1) altamente otimizada.
A maneira mais comum e direta de criar um dicionário é usar chaves `{}` com pares de valores-chave separados por dois pontos. Por exemplo, `my_dict = {"name": "Alice", "age": 30}` cria um dicionário preenchido. Para criar um dicionário vazio, você pode usar chaves vazias `{}` ou o construtor `dict()`.
Python também oferece outros métodos avançados para criar dicionários dinamicamente. O construtor `dict()` pode construir dicionários a partir de listas de tuplas de valores-chave ou argumentos de palavras-chave. Além disso, as compreensões de dicionário fornecem uma maneira poderosa de inicializar um dicionário a partir de um iterável existente, aplicando transformações a chaves ou valores embutidos.
Saída de código e execução
Este script demonstra várias maneiras de inicializar e criar dicionários em Python.
# 1. Dictionary literal syntax (most common)
user = {"name": "Alice", "age": 28, "verified": True}
print("Literal dict:", user)
# 2. Using the dict() constructor with keyword arguments
config = dict(host="localhost", port=8080, debug=True)
print("Constructor dict:", config)
# 3. Creating dictionary from key-value pairs (tuples)
pairs = [("id", 101), ("status", "active")]
status_dict = dict(pairs)
print("From tuples:", status_dict)
# 4. Dictionary comprehension (dynamic creation)
squares = {x: x**2 for x in range(1, 5)}
print("Comprehension:", squares)Literal dict: {'name': 'Alice', 'age': 28, 'verified': True}
Constructor dict: {'host': 'localhost', 'port': 8080, 'debug': True}
From tuples: {'id': 101, 'status': 'active'}
Comprehension: {1: 1, 2: 4, 3: 9, 4: 16}Implementação passo a passo
- Use chaves {} com pares chave: valor para criar um literal de dicionário.
- Chame dict() para criar um dicionário vazio ou construir um usando argumentos de palavras-chave.
- Passe uma lista de tuplas de valores-chave para dict() para transformar matrizes relacionais em um objeto de dicionário.
Perguntas frequentes
Os itens de lista ou dicionário podem ser usados como chaves de dicionário?
Não, as chaves do dicionário devem ser hasháveis (imutáveis). Como listas e dicionários são mutáveis, não podem ser chaves. Tuplas, strings e inteiros são chaves válidas.
Como posso criar um dicionário com valores padrão para um conjunto de chaves?
Você pode usar dict.fromkeys(keys_list, default_value) para construir um dicionário onde todas as chaves compartilham o mesmo valor padrão.
Tópicos Relacionados
Aprenda como fazer loop ou iterar em um dicionário Python. Descubra métodos para fazer loop em chaves, valores e pares de valores-chave com exemplos limpos e executáveis.
Como adicionar e atualizar chaves em um dicionário PythonAprenda como adicionar elementos ou atualizar pares de valores-chave em um dicionário Python. Explore colchetes, método de atualização e opções de operador de mesclagem.
Recursos Python recomendados
Expanda seu conhecimento com tutoriais interativos relacionados, folhas de dicas e comparações de código.
Variáveis e tipos de dados Python explicados
Entenda as variáveis do Python e os principais tipos de dados (strings, inteiros, flutuantes, booleanos). Um guia completo para iniciantes sobre atribuição de memória em Python.
Folha de referências dos métodos do dicionário Python
Aprenda métodos de dicionário Python. Guia de referência completo para inserções, recuperações, atualizações e verificações de pares de valores-chave.
Python vs JavaScript: qual linguagem de programação é a melhor?
Uma comparação abrangente entre Python e JavaScript. Explore diferenças de sintaxe, desempenho, casos de uso (backend versus frontend) e exemplos de codificação.