Dicionário Python

Resumo : neste tutorial, você aprenderá sobre o Dicionário Python, que permite organizar informações relacionadas.

Introdução ao tipo de dicionário Python

Um dicionário Python é uma coleção de pares chave-valor onde cada chave está associada a um valor.

Um valor no par chave-valor pode ser um número , uma string , uma lista , uma tupla ou até mesmo outro dicionário. Na verdade, você pode usar um valor de qualquer tipo válido em Python como o valor no par chave-valor.

Uma chave no par chave-valor deve ser imutável. Em outras palavras, a chave não pode ser alterada, por exemplo, um número, uma string, uma tupla, etc.

Python usa chaves {}para definir um dicionário. Dentro das chaves, você pode colocar zero, um ou vários pares de valores-chave.

O exemplo a seguir define um dicionário vazio:

empty_dict = {}Linguagem de código:  Python  ( python )

Normalmente, você define um dicionário vazio antes de um loop, seja for loop ou while loop . E dentro do loop, você adiciona pares de valores-chave ao dicionário.

Para encontrar o tipo de um dicionário, você usa a type()função da seguinte forma:

empty_dict = {}

print(type(empty_dict))
Linguagem de código:  Python  ( python )

Saída:

<class 'dict'>Linguagem de código:  Python  ( python )

O exemplo a seguir define um dicionário com alguns pares de valores-chave:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}
Linguagem de código:  Python  ( python )

O persondicionário possui cinco pares de valores-chave que representam nome, sobrenome, idade, cores favoritas e status ativo.

Acessando valores em um Dicionário

Para acessar um valor por chave de um dicionário, você pode usar a notação de colchetes ou o get()método.

1) Usando notação de colchetes

Para acessar um valor associado a uma chave, você coloca a chave entre colchetes:

dict[key]Linguagem de código:  Python  ( python )

A seguir mostramos como obter os valores associados à chave first_namee last_nameno persondicionário:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}
print(person['first_name'])
print(person['last_name'])Linguagem de código:  Python  ( python )

Saída:

John
DoeLinguagem de código:  Python  ( python )

2) Usando o método get()

Se você tentar acessar uma chave que não existe, receberá um erro. Por exemplo:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

ssn = person['ssn']Linguagem de código:  Python  ( python )

Erro:

Traceback (most recent call last):
  File "dictionary.py", line 15, in <module>
    ssn = person['ssn']
KeyError: 'ssn'Linguagem de código:  Python  ( python )

Para evitar esse erro, você pode usar o get()método do dicionário:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

ssn = person.get('ssn')
print(ssn)
Linguagem de código:  Python  ( python )

Saída:

NoneLinguagem de código:  Python  ( python )

Se a chave não existir, o get()método retornará Noneem vez de lançar um KeyError. Observe que isso Nonesignifica que não existe valor.

O get()método também retorna um valor padrão quando a chave não existe, passando o valor padrão para seu segundo argumento.

O exemplo a seguir retorna a '000-00-0000'string se a ssnchave não existir no persondicionário:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

ssn = person.get('ssn', '000-00-0000')
print(ssn)Linguagem de código:  Python  ( python )

Saída:

000-00-0000Linguagem de código:  Python  ( python )

Adicionando novos pares de valores-chave

Como um dicionário tem uma estrutura dinâmica, você pode adicionar novos pares de valores-chave a ele a qualquer momento.

Para adicionar um novo par de valores-chave a um dicionário, especifique o nome do dicionário seguido pela nova chave entre colchetes junto com o novo valor.

O exemplo a seguir adiciona um novo par de valores-chave ao persondicionário:

person['gender'] = 'Famale'
Linguagem de código:  Python  ( python )

Modificando valores em um par de valores-chave

Para modificar um valor associado a uma chave, especifique o nome do dicionário com a chave entre colchetes e o novo valor associado à chave:

dict[key] = new_valueLinguagem de código:  Python  ( python )

O exemplo a seguir modifica o valor associado ao agedo persondicionário:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

person['age'] = 26

print(person)Linguagem de código:  Python  ( python )

Saída:

{'first_name': 'John', 'last_name': 'Doe', 'age': 26, 'favorite_colors': ['blue', 'green'], 'active': True}Linguagem de código:  Python  ( python )

Removendo pares de valores-chave

Para remover um par chave-valor por uma chave, você usa a delinstrução:

del dict[key]Linguagem de código:  Python  ( python )

Nesta sintaxe, você especifica o nome do dicionário e a chave que deseja remover.

O exemplo a seguir remove a chave 'active'do persondicionário:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

del person['active']
print(person)Linguagem de código:  Python  ( python )

Saída:

{'first_name': 'John', 'last_name': 'Doe', 'age': 25, 'favorite_colors': ['blue', 'green']}Linguagem de código:  Python  ( python )

Percorrendo um dicionário

Para examinar um dicionário, você pode usar um forloop para iterar sobre seus pares chave-valor, ou chaves, ou valores.

Observe que desde o Python 3.7, ao percorrer um dicionário, você obterá os pares de valores-chave na mesma ordem em que os inseriu.

1) Loop de todos os pares de valores-chave em um dicionário

O dicionário Python fornece um método chamado items()que retorna um objeto que contém uma lista de pares de valores-chave como tuplas em uma lista.

Por exemplo:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

print(person.items())Linguagem de código:  Python  ( python )

Saída:

dict_items([('first_name', 'John'), ('last_name', 'Doe'), ('age', 25), ('favorite_colors', ['blue', 'green']), ('active', True)])Linguagem de código:  Python  ( python )

Para iterar sobre todos os pares de valores-chave em um dicionário, você usa um forloop com duas variáveis key​​e valuedescompacta cada tupla da lista:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

for key, value in person.items():
    print(f"{key}: {value}")Linguagem de código:  Python  ( python )

Saída:

first_name: John
last_name: Doe
age: 25
favorite_colors: ['blue', 'green']
active: TrueLinguagem de código:  Python  ( python )

Observe que você pode usar qualquer nome de variável no forloop. Eles não precisam ser o keye value.

2) Percorrer todas as chaves de um dicionário

Às vezes, você só deseja percorrer todas as chaves de um dicionário. Neste caso, você pode usar um forloop com o keys()método.

O keys()método retorna um objeto que contém uma lista de chaves no dicionário.

Por exemplo:


person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

for key in person.keys():
    print(key)Linguagem de código:  Python  ( python )

Saída:

first_name
last_name
age
favorite_colors
activeLinguagem de código:  Python  ( python )

Na verdade, percorrer todas as chaves é o comportamento padrão ao percorrer um dicionário. Portanto, você não precisa usar o keys()método.

O código a seguir retorna a mesma saída do exemplo acima:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

for key in person:
    print(key)Linguagem de código:  Python  ( python )

3) Percorrer todos os valores em um dicionário

O values()método retorna uma lista de valores sem nenhuma chave.

Para percorrer todos os valores em um dicionário, você usa um loop for com o values()método:

person = {
    'first_name': 'John',
    'last_name': 'Doe',
    'age': 25,
    'favorite_colors': ['blue', 'green'],
    'active': True
}

for value in person.values():
    print(value)
Linguagem de código:  Python  ( python )

Saída:

John
Doe
25
['blue', 'green']
TrueLinguagem de código:  Python  ( python )

Resumo

  • Um dicionário Python é uma coleção de pares chave-valor, onde cada chave possui um valor associado.
  • Use colchetes ou get()método para acessar um valor por sua chave.
  • Use a delinstrução para remover um par chave-valor pela chave do dicionário.
  • Use forloop para iterar chaves, valores e pares de valores-chave em um dicionário.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *