5
respostas

[Bug] Conhecendo Dados

Seguinto as orientacoes da aula Conhecendo Dados, executamos as orientacoes de acordo com video (acredito eu!!!), porem, no final das instrucoes para executar:

with open(path_json, 'r') as file:
   print(file.readline())

Da erro:

   NameError, line 1
   
   NameError: name 'path_json' is not defined

Muito obrigada, Claudia Azevedo

5 respostas

Olá Cláudia, tudo bem com você?

O erro NameError: name 'path_json' is not defined é causado quando o Python tenta acessar uma variável que não foi definida anteriormente.Neste caso, a variável path_json não foi definida antes de ser usada.

Nesta aula a partir do minuto 14:11, o instrutor faz a criação da variável path_json, recomendo que assista, faça as modificações e tente executar o código novamente.

Deixo também em texto como ficará a declaração dessa variável:

path_json = '../data_raw/dados_empresaA.json'

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Ola! Obrigada pelas orientacoes e fizemos como recomendado, aparentemente deu tudo certo, o programa leu/reconheceu a variavel, a setinha ficou verde.

Porem, seguindo adiante na aula seguinte: Lendo dados com Json, ao executarmos:

1 -

with open(path_json, 'r') as file:
    print(file.readline())
Ele executa, da a setinha em verde, mas nao aparece a mensagem abaixo, como de nosso instrutor. E isso mesmo??

2 -

with open(path_json, 'r') as file:
    dados = file.readline()
Ele executa, da a setinha em verde, mas nao aparece a mensagem abaixo, como de nosso instrutor. E isso mesmo??

3 -

dados
Ele executa, da a setinha em verde, mas nao aparece a mensagem abaixo, como de nosso instrutor. 
A mensagem que aparece e: '\n'

4 -

dados[10]
IndexError: string index out of range

5 -

with open(path_json, 'r') as file:
    dados_json = json.load(file)

Da um erro gigantesco:

    JSONDecodeError                           Traceback (most recent call last)

6 -

dados_json[0]

NameError: name 'dados_json' is not defined

Olha... como esta dando esses erros, acredito que nao adianta seguir enfrente com a aula, pois o instrutor nos passara comandos e nao vou conseguir executa-los. Acredito que sera mais produtivo quando ajustarmos esses erros.

Mais uma vez, muito obrigada! Claudia Azevedo

Mesmo problema por aqui, tem cara de problema com estrutura do json. Você baixou, assim como eu, pelo link no wget? Caso sim, vou tentar baixar o arquivo por outro lugar e informo se funcionou.

Eu acredito que baixei pelo mesmo link. Claudia

Boa noite, Cláudia!

Peço desculpas pela demora no retorno.

O erro retornado de JSONDecodeError pode, sim, ter relação com a estrutura do arquivo, conforme o Vitor comentou na postagem anterior. Deixarei abaixo o passo a passo para correção e com imagens para que você consiga prosseguir com seus estudos.

  • Faça novamente o download do json da empresa A. Para isso, clique neste link.

  • Na tela que se abrir, com o botão direito, clique na opção salvar como:

    Imagem que mostra a opção salvar como selecionada na tela do navegador

  • Será aberto uma janela para que você escolha onde quer salvar o arquivo. Procure a pasta do projeto do curso e salve o arquivo dentro dela.

  • Agora, dentro do VS Code, no painel esquerdo, clique sobre o arquivo que você acabou de baixar e selecione a opção Copy Path:

    Imagem que mostra a opção Copy Path selecionada

  • Após isso, execute o código abaixo. Lembrando de substituir o caminho da variável path_json pelo caminho que você copiou no passo anterior:

    import json
    
    path_json = r'CAMINHO QUE VOCÊ COPIOU'
    
    with open(path_json, 'r') as file:
        dados_json = json.load(file)
    
    dados_json[0]
    
    • Resultado da execução do código:

    Imagem que mostra o resultado da execução do código

Seguindo esse passo a passo, você deverá obter êxito na leitura dos dados. Mas, fico a disposição para quaisquer erros.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!