Passar para o conteúdo principal

Operações de Chave-Valor com Dicionários

Key-Value Operations with Dictionaries

Com bastante frequência, nos deparamos com situações quando precisamos operar com chaves ou valores de um dicionário. Felizmente, os dicionários oferecem uma variedade de operações para trabalhar com chaves e valores.

Obtendo Chaves do Dicionário

Para obter chaves do dicionário em Python, você pode usar o método keys(). Aqui está um exemplo de obtenção de conjunto de chaves:

# Creating a dictionary
my_dict = {"name": "Sam", "age": 35, "city": "Boston"}

# Getting the keys of the dictionary
keys = my_dict.keys()

# Printing the keys
print(keys) # Output: dict_keys(['name', 'age', 'city'])

Observe que keys() retorna um objeto de visualização, que é uma visão dinâmica sobre as chaves do dicionário. Isso significa que se o dicionário for modificado, o objeto de visualização refletirá essas alterações. Se você precisar trabalhar com as chaves como uma lista, pode converter o objeto de visualização em uma lista.

Convertendo Chaves de Dicionário em Lista

Para converter chaves de dicionário em lista no Python, você pode usar o método keys() e a função list(). Aqui está um exemplo:

my_dict = {'a': 1, 'b': 2, 'c': 3}
keys_list = list(my_dict.keys())
print(keys_list)  # Output: ['a', 'b', 'c']

No código acima, my_dict.keys() retorna um objeto dict_keys contendo as chaves de my_dict. A função list() é usada para converter este objeto em uma lista, que é atribuída à variável keys_list. Finalmente, keys_list é impresso no console.

Verificando a Presença da Chave

Em Python, o método has_key() não está disponível para dicionários. Em vez disso, você pode usar o operador in para verificar se um dicionário possui uma chave. Vamos ver como verificar se a chave existe no dicionário em Python:

# Creating a dictionary
my_dict = {"name": "Sam", "age": 35, "city": "Boston"}

# Checking if a key is present in the dictionary
if "name" in my_dict:
    print("The key 'name' is present in the dictionary")
else:
    print("The key 'name' is not present in the dictionary")

if "country" in my_dict:
    print("The key 'country' is present in the dictionary")
else:
    print("The key 'country' is not present in the dictionary")

Isso irá gerar:

The key 'name' is present in the dictionary
The key 'country' is not present in the dictionary

Observe que o operador in verifica se a chave está presente no dicionário, não se o valor da chave é None. Se você precisar verificar a presença de um valor de chave em um dicionário, pode usar o método get().

Deletando uma Chave de um Dicionário

Em Python, você pode deletar uma chave de um dicionário usando a declaração del ou o método pop().

Aqui está um exemplo usando a declaração del para deletar uma chave de um dicionário:

my_dict = {"a": 1, "b": 2, "c": 3}

del my_dict["b"]

print(my_dict)  # Output: {"a": 1, "c": 3}

No exemplo acima, a chave "b" é excluída do dicionário my_dict usando a instrução del.

Aqui está um exemplo usando o método pop() para excluir uma chave de um dicionário:

my_dict = {"a": 1, "b": 2, "c": 3}

my_dict.pop("b")

print(my_dict)  # Output: {"a": 1, "c": 3}

No exemplo acima, a chave "b" é deletada do dicionário my_dict usando o método pop(). O método pop() também retorna o valor associado à chave deletada, o que pode ser útil se você precisar realizar algum processamento adicional baseado nesse valor.

Conversão dos Valores do Dicionário em Lista

Você pode usar o método values() de um dicionário Python para obter uma lista dos seus valores.

Aqui está um exemplo:

my_dict = {'a': 1, 'b': 2, 'c': 3}
values_list = list(my_dict.values())
print(values_list) # Output: [1, 2, 3]

No código acima, criamos um dicionário my_dict com três pares chave-valor. Em seguida, chamamos o método values() no dicionário para obter um objeto de visualização de seus valores e convertê-lo em uma lista usando o construtor list(). Finalmente, imprimimos a lista resultante dos valores.

Note que a ordem dos valores na lista não é garantida ser a mesma que a ordem das chaves no dicionário, já que dicionários são não ordenados em Python.

Contribua connosco!

Não hesite em contribuir para os tutoriais Python no GitHub: crie uma bifurcação, actualize o conteúdo e emita um pedido de retirada.

Profile picture for user almargit
Python developer, content manager.
Profile picture for user AliaksandrSumich
Atualizado: 2024-05-03 22:51
Profile picture for user angarsky
Revisto e aprovado