2
respostas

[Bug] Dict interpretado como List ao tentar iterar e usar dict.get() - 'Pipeline de dados combinando python e orientacao a objeto'

Oi, pessoal, estou fazendo o projeto do curso 'Pipeline de dados combinando python e orientacao a objeto' Encontrei o seguinte problema na aula 4-4 'Tratamento dos dados' na qual devemos adicionar uma chave aos dicionários utilizando o método get() dos dicionários. Entretanto, ao rodar o script (tentei fazer por conta própria e copiando o script da aula) obtenho o mesmo erro: o dicionário é interpretado como lista dentro do loop for. Qual o problema e como posso resolver? Abaixo os detalhes mostrando que lista_unificada é uma lista de dicionários e o erro. Obrigado!

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

print(type(lista_unificada))
<class 'list'>
  • Teste com um item de lista_unificada
lista_unificada[-1].get('Valor em Reais', 'Indisponível')

'Indisponível'`
-
for n in lista_unificada:
    print(n)
    
{'Nome do Item': 'Blush em pó', 'Classificação do Produto': 'Eletrodomésticos', 'Valor em Reais (R$)': 79.41, 'Quantidade em Estoque': 7, 'Nome da Loja': 'Filial 7'}
{'Nome do Item': 'Lápis de sobrancelha', 'Classificação do Produto': 'Eletrodomésticos', 'Valor em Reais (R$)': 85.47, 'Quantidade em Estoque': 78, 'Nome da Loja': 'Filial 8'}
{'Nome do Item': 'Base lí ... (etc)
dados_combinados_tabela = [nomes_coluna]

for dicionario in lista_unificada:
    linha = []
    for coluna in nomes_coluna:
        linha.append(dicionario.get(coluna, 'Indisponível'))
    dados_combinados_tabela.append(linha)
2 respostas

Oii, Daniel! Tudo bem?

No primeiro momento não consigo identificar um erro em seu código compartilhado. Então, peço por gentileza, que compartilhe o link do seu Github contendo o projeto, dessa forma eu consigo analisar ele como um todo para encontrar uma solução mais assertiva.

E pude perceber que finalizou o curso, caso tenha resolvido o problema, compartilhe com a comunidade caso se sinta confortável.

Fico à disposição!

Bons estudos, Daniel!

Boa tarde, Nathalia, obrigado pelo retorno! O problema só aconteceu no VSCode. Eu colei todo o código no Google Colab e deu certo...

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software