Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Dúvida] Desafio

Eu estava fazendo conforme a aula mas quando tento abrir o arquivo .csv ele da esse erro:

Row 0 given with size different than 2 (the number of columns in the table).
Error: Row 0 given with size different than 2 (the number of columns in the table).
at N.u (https://ssl.gstatic.com/colaboratory-static/common/b947b1507a00588d28dc93cea74d5162/js%2Fmodules%2Fgviz_loader.js:215:461)
at N.l (https://ssl.gstatic.com/colaboratory-static/common/b947b1507a00588d28dc93cea74d5162/js%2Fmodules%2Fgviz_loader.js:216:322)
at N.addRow (https://ssl.gstatic.com/colaboratory-static/common/b947b1507a00588d28dc93cea74d5162/js%2Fmodules%2Fgviz_loader.js:216:461)
at Yx.addRow (https://ssl.gstatic.com/colaboratory-static/common/b947b1507a00588d28dc93cea74d5162/js%2Fmodules%2Fgviz_loader.js:552:175)
at tDc.fillTable (https://ssl.gstatic.com/colaboratory-static/common/b947b1507a00588d28dc93cea74d5162/external_binary_es6_l10n__pt_br.js:15709:1038)
at https://ssl.gstatic.com/colaboratory-static/common/b947b1507a00588d28dc93cea74d5162/external_binary_es6_l10n__pt_br.js:15709:794
at next ()
at b (https://ssl.gstatic.com/colaboratory-static/common/b947b1507a00588d28dc93cea74d5162/external_binary_es6_l10n__pt_br.js:6:40)

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

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

1 resposta

Olá, MAICO! Tudo bem?

Sobre o erro ao abrir o arquivo CSV no Google Colab, o problema aqui é que o arquivo foi salvo com um número diferente de colunas em pelo menos uma linha.

Na sua captura de tela, o arquivo é gravado utilizando vírgulas como separador:

arquivo.write(f"{pergunta_dic['pergunta']},{pergunta_dic['resposta']}\n")

Esse código escreve cada pergunta e resposta separadas por uma vírgula. E algumas respostas geradas pela IA também possuem vírgulas no texto, fazendo com que o Google Colab interprete essas vírgulas como novas colunas. Por isso ele exibe a mensagem:

Row 0 given with size different than 2

A forma mais indicada é utilizar o módulo csv do Python, que faz esse tratamento automaticamente.

Veja este exemplo:

import csv

with open("respostas.csv", "w", newline="", encoding="utf-8") as arquivo:
    escritor = csv.writer(arquivo)
    escritor.writerow(["pergunta", "resposta"])

    for item in lista_dic_respostas:
        escritor.writerow([item["pergunta"], item["resposta"]])

Esse código garante que o arquivo seja criado certinho, mesmo quando as respostas contiverem vírgulas, aspas ou outros caracteres especiais.

Como alternativa, você também pode utilizar ; (ponto e vírgula) como separador em vez de , (vírgula), desde que faça a leitura utilizando o mesmo delimitador.

Você conseguiu testar utilizando o módulo csv ou trocando o separador para ;? Assim conseguimos verificar se o arquivo passa a abrir normalmente no visualizador do Google Colab. Clicando aqui, você será encaminhado ao notebook do Instrutor para comparar seu código e testar também.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!