Exercícios Resolvidos de Tuplas e dicionários

Ver Teoria

Enunciado

Faça uma função que encontre todas as chaves que estão associadas a um determinado valor em um dicionário. A função receberá no primeiro parâmetro o dicionário a ser analisado, e como segundo parâmetro o valor da chave a ser buscada. A função retornará uma lista com as chaves encontradas, essa lista pode ter diversos valores, apenas um ou nenhum. Nos exemplos, a função foi chamada de p r o c u r a R e v e r s a .

Exemplo:

Passo 1

O enunciado nos diz o suficiente para conseguirmos definir o escopo da função p r o c u r a R e v e r s a , por esse motivo iremos começar por ela:

Pronto, agora temos a função p r o c u r a R e v e r s a , que espera como parâmetros um dicionário e um valor de chave, definida.

Passo 2

O enunciado nos diz que caso haja uma chave de valor correspondente no dicionário, a mesma deve ser armazenada em um lista. Por esse motivo, devemos declarar essa lista logo no início da função:

Passo 3

Agora temos que pensar em uma lógica para adicionarmos as chaves que possuem valores correspondentes ao passado pelo parâmetro em uma lista. Para isso, podemos utilizar a estrutura de repetição for:

Onde verificaremos a cada loop do laço de repetição for se o valor da chave iterada naquele momento do dicionário é igual a v a l o r , caso seja, basta adicionarmos através do método de lista append a chave v na lista c h a v e s . Caso contrário, as iterações irão continuar até que todas as chaves do dicionário tenham sido verificadas.

Passo 4

Por fim, para finalizarmos a nossa função, basta retornarmos a lista c h a v e s de todas as chaves em que os seus valores deram “match” com o valor passado como parâmetro:

Resposta

Ei, a resposta está no passo a passo :)