Dividindo um Dicionário Python em Múltiplos Dicionários com base nos Valores.
Em Python, você pode dividir um dicionário em múltiplos dicionários com base nos valores que ele contém. Isso pode ser útil quando você deseja agrupar os dados no dicionário com base em certos critérios. Aqui está um tutorial passo a passo sobre como conseguir isso.
Passo 1: Criar um Dicionário
Primeiro, vamos criar um dicionário de exemplo que usaremos ao longo deste tutorial. O dicionário conterá pares de chave-valor, onde os valores serão usados para dividir.
my_dict = {
'maçã': 10,
'banana': 12,
'laranja': 9,
'uva': 10,
'kiwi': 12,
'abacaxi': 9
}
Passo 2: Inicializar um Dicionário Vazio para Cada Valor
Em seguida, precisamos inicializar um dicionário vazio para cada valor único no dicionário original. Usaremos a função set() para obter os valores únicos do dicionário.
valores_unicos = set(my_dict.values())
dicionarios_divididos = {valor: {} for valor in valores_unicos}
Neste exemplo, o dicionário dicionarios_divididos terá as chaves como os valores únicos de my_dict e dicionários vazios como seus valores correspondentes.
Passo 3: Iterar pelo Dicionário Original
Agora, precisamos iterar pelo dicionário original e atribuir cada par de chave-valor ao dicionário dividido apropriado com base em seu valor.
for chave, valor in my_dict.items():
dicionarios_divididos[valor][chave] = valor
Este código atribui o par de chave-valor ao dicionário dividido com o valor correspondente.
Passo 4: Imprimir os Dicionários Divididos
Por fim, podemos imprimir cada dicionário dividido para ver o resultado.
for valor, dicionario_dividido in dicionarios_divididos.items():
print(f"Dicionário com valor {valor}: {dicionario_dividido}")
Este código imprimirá cada dicionário dividido separadamente, juntamente com seu valor correspondente.
Exemplo Completo
my_dict = {
'maçã': 10,
'banana': 12,
'laranja': 9,
'uva': 10,
'kiwi': 12,
'abacaxi': 9
}
valores_unicos = set(my_dict.values())
dicionarios_divididos = {valor: {} for valor in valores_unicos}
for chave, valor in my_dict.items():
dicionarios_divididos[valor][chave] = valor
for valor, dicionario_dividido in dicionarios_divididos.items():
print(f"Dicionário com valor {valor}: {dicionario_dividido}")
Saída
A saída do código acima será:
Dicionário com valor 10: {'maçã': 10, 'uva': 10}
Dicionário com valor 12: {'banana': 12, 'kiwi': 12}
Dicionário com valor 9: {'laranja': 9, 'abacaxi': 9}
O dicionário original foi dividido em três dicionários separados com base nos valores. Cada dicionário dividido contém as chaves e valores que correspondem a um valor específico do dicionário original.
É isso! Você dividiu com sucesso um dicionário Python em múltiplos dicionários com base nos valores.