1
resposta

Exercício 9 - Explicação do raciocínio

Olá, tudo bem? Por favor, estou com dúvida no exercício 9.

Uma empresa possui filiais espalhadas nos Estados da região Sudeste do Brasil. Em uma das tabelas de cadastro das filiais há uma coluna contendo a informação de qual é o Estado a que pertence: estados = ['SP', 'ES', 'MG', 'MG', 'SP', 'MG', 'ES', 'ES', 'ES', 'SP', 'SP', 'MG', 'ES', 'SP', 'RJ', 'MG', 'RJ', 'SP', 'MG', 'SP', 'ES', 'SP', 'MG']. A empresa sempre está abrindo novas filiais, de modo que a tabela está constantemente recebendo novos registros e o gestor gostaria de possuir a informação atualizada da quantidade de filiais em cada Estado.

A partir da coluna com a informação dos Estados, crie um dicionário usando dict comprehension com a chave sendo o nome de um Estado e o valor sendo a contagem de vezes em que o Estado aparece na lista.

Dica: Você pode fazer um passo intermediário para gerar uma lista de listas em que cada uma das listas possui o nome de apenas um Estado com valores repetidos.

A resposta oferecida pela plataforma é:

estados = ['SP', 'ES', 'MG', 'MG', 'SP', 'MG', 'ES', 'ES', 'ES', 'SP', 'SP', 'MG', 'ES', 'SP', 'RJ', 'MG', 'RJ', 'SP', 'MG', 'SP', 'ES', 'SP', 'MG']

Armazenando os estados sem repetição de valor

estados_unicos = list(set(estados)) print(estados_unicos)

Criando uma lista de listas (base de dados) com valores repetidos de cada estado

base_de_dados = [] for estado in estados_unicos: lista = [uf for uf in estados if uf == estado] base_de_dados.append(lista) print(base_de_dados)

Criando um dicionário em que a chave é o nome de cada estado único e o valor é a contagem de elementos

contagem_valores = {estados_unicos[i]: len(lista_de_listas[i]) for i in range(len(estados_unicos))} print(contagem_valores)

Poderiam explicar a linhda de raciocínio para chegar a essa conclusão?

1 resposta

Oii, Clara! Tudo bem?

Sim, vamos lá! O objetivo principal é criar um dicionário que mostre a quantidade de filiais que cada Estado contém.

Então, trazendo para um modelo prático, suponhamos que você tem uma lista com as siglas de todos os estados das filiais de uma empresa. No qual, o objetivo é criar um resumo que mostre quantas filiais existem em cada estado.

Para isso, é preciso trilhar alguns caminhos como, por exemplo:

  • Separar os Estados únicos, com uma lista que tenha apenas estados sem repetições. E isso pode-se usar o método setque armazena apenas elementos únicos, para que possamos tornar em uma lista para usar depois.
  • Depois, para organizar, é preciso agrupar as filiais por Estado. A criação de uma lista de listas, é uma boa abordagem.
  • Próximo passo, é realizar a contagem de filiais. Para facilitar, crie um dicionário que mapeie cada estado para a quantidade de filiais naquele Estado. Use a uma lista de compreensão que percorra toda a lista de Estados únicos e a lista de listas de filiais em tempo real.
  • Como resultado, você vai ter um dicionário que a chave será chamada de estado e o valor será a quantidade de filiais no estado.

Como auxilio para a resolução e entendimento do desafio, você pode clicar no botão verde escrito Ver opinião do Instrutor para estudar a forma que ele resolveu o desafio, cada parte possui um comentário sobre do que foi feito.

Espero ter ajudado a esclarecer a sua dúvida. Conte sempre conosco.

Abraço!