Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

csv.DictReader

Boa noite, estou parado nesta parte e notei que quando estou fazendo o curso no vc code e paro, salvo e quando volto para onde parei sempre dá algum b.o. sabe me dizer porque isso acontece?

dados_csv = []
with open(path_csv, 'r') as file:
    spamreader = csv.DictReader(file, delimiter=',')
    for row in spamreader:
        dados_csv.append(row)

Quando dou shift enter ele me dá está frase:

NameError                                 Traceback (most recent call last)
Cell In[7], line 3
      1 dados_csv = []
      2 with open(path_csv, 'r') as file:
----> 3     spamreader = csv.DictReader(file, delimiter=',')
      4     for row in spamreader:
      5         dados_csv.append(row)

NameError: name 'csv' is not defined
2 respostas
solução!

Oii, Samuel! Tudo bem?

O erro indica que o Python não está reconhecendo o módulo csv. Isso pode ocorrer quando esquecemos de importar o módulo ou no caso de encerrar o projeto, o kernel pode desativar as células de códigos anteriores.

Para resolver isso recomendo que:

  • Verifique se importou o csv no início do código, ficaria assim:
import csv
dados_csv = []
with open(path_csv, 'r') as file:
    spamreader = csv.DictReader(file, delimiter=',')
    for row in spamreader:
        dados_csv.append(row)
  • Após verificar que tudo está certo, execute os seguintes passos:

Reinicie o Notebook clicando em "Restart" e execute novamente todas as células, clicando em "Run All", como na imagem abaixo:

Botoões para reiniciar e executar tudo, no Visual Studio Code.

Esse processo pode demorar um pouco, aguarde até completar e observe se funcionou como esperado.

Espero que dê certo e conte sempre conosco para te ajudar.

Bons estudos, Samuel!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado!

Oi, muito obrigado pela resposta rápida, eu fiz o que você orientou e estranho que não deu certo, então eu cliquei em executar um por um manualmente e deu certo, mas só fiz isso porque você pediu pra eu fazer o comando, ai pensei em fazer depois manual e foi!