Vamos usar esses métodos de escrita de CSV para anexar nossos dados recém -criados a um arquivo CSV existente.
Método 1: Usando o método CSV Writer ()
Neste método, usaremos o método Writer () do CSV para anexar os dados recém -criados ao CSV.
Arquivo CSV: O arquivo CSV abaixo (teste.CSV) seremos usados para anexar uma nova linha.
Mês, 1958.1959.1960do escritor de importação do CSV
do escritor de importação do CSVSaída:
Mês, 1958.1959.1960Linha 1: Nós importamos o módulo do escritor.
Linha 4 a 10: Criamos uma função chamada "AppendNewrow", que aceita dois parâmetros (o nome do arquivo CSV existente e os dados). Abrimos o arquivo CSV (arquivo CSV existente) com o Modo Apêndento ('A'), para que possamos adicionar nossos novos dados ao arquivo CSV. Para isso, criamos um objeto (Append_writer) do módulo do escritor. E na próxima linha, estamos chamando o Method Writertow do objeto Append_writer para anexar os dados ao CSV.
Linha 13 e 15: Criamos uma nova lista de dados que queremos anexar a um arquivo CSV existente. Na linha 15, estamos chamando a função de "AppendNewrow" e passando dois parâmetros (o nome do arquivo CSV existente e os dados).
Agora, vamos anexar dados onde alguns dados estão faltando.
No exemplo anterior, vimos que não há valor de coluna ausente nos dados recém -criados. Mas o que acontecerá se tivermos algum valor de coluna ausente? Portanto, mesmo se tivermos algum valor de coluna ausente, o módulo do escritor do CSV não tem método para verificar todos os valores de colunas estão presentes nos dados ou não.
# Lista de novos elementos que queremos anexarSaída:
Mês, 1958.1959.1960Criamos um novo conjunto de dados em que um valor da coluna está faltando. Então, quando executamos o programa de exemplo acima, ele fornece um resultado simples anexado, conforme mostrado na saída acima. Mas na própria saída, podemos ver que o valor 405 está faltando. Como resultado, o módulo de escritor CSV não tem um método para determinar qualquer valor de coluna ausente.
Portanto, se quisermos ajustar o valor adequado da coluna dos dados recém -criados, mesmo que houver alguns valores ausentes, devemos passar algum valor de string vazio junto com os dados, como abaixo:
newrow = ["DEC", 337 ", 432]O caso acima não é grande coisa porque é apenas uma única fila de dados, mas quando temos bilhões de linhas, não podemos lidar com essas situações com o método de adição de string vazio. Porque então se tornará um trabalho muito tedioso.
Método 2: Usando o método DictWriter ()
Neste método, discutiremos o método dictWriter () para anexar os dados recém -criados ao CSV. O método dictwriter () também tem a instalação para descobrir qual valor da coluna está ausente porque é um método baseado em dicionário e, se algum valor-chave estiver vazio, manterá a sequência vazia automaticamente.
Arquivo CSV: Estamos usando o mesmo arquivo CSV (teste.CSV) como usamos nos exemplos anteriores.
# Esta função que anexa novos dados de linha em um arquivo CSV existenteSaída:
Mês, 1958.1959.1960Linha 1: Importamos o método Dictwriter.
Linha 4 a 12: Criamos uma função chamada "AppendNewrow", que aceita dois parâmetros (o nome do arquivo CSV existente e os dados). Abrimos o arquivo CSV (existente) com o Modo Apênd. Em seguida, passamos pelo cabeçalho do CSV na forma de uma lista para o dictwriter enquanto criava o próprio objeto. Temos que contar os nomes de colunas do CSV para o objeto antes de escrever para o CSV. Caso contrário, ele gerará um erro porque o objeto não poderá entender os nomes -chave do dicionário. E na próxima linha, estamos chamando o Method Writertow do objeto Append_writer para anexar os dados do dicionário ao CSV.
Linha 14 a 16: Criamos um novo dicionário de dados que queremos anexar a um arquivo CSV existente. Na linha 16, estamos chamando a função de "AppendNewrow" e passando dois parâmetros (o nome do arquivo CSV existente e os dados).
Agora, vamos anexar dados onde alguns dados estão faltando.
Como sabemos, o principal problema com o método do escritor é que não há método para detectar automaticamente que qualquer valor da coluna está faltando. Mas o método Dictwriter pode adivinhar isso automaticamente com a ajuda das teclas que faltam. Então, vamos explorar isso com um exemplo.
# Lista de novos elementos que queremos anexarAgora, vamos passar novos dados de dicto onde a chave ('1959') com seu valor está faltando. Então, vamos passar esses dados para o programa e ver o resultado.
Saída:
Mês, 1958.1959.1960A saída acima mostra que no lugar do valor ausente, o método Dictwriter colocou uma sequência vazia.
Conclusão
Vimos dois métodos para escrever dados recém -criados para um arquivo CSV existente. O primeiro escritor de métodos é bom, mas apenas nesse caso, quando não temos valores de coluna ausentes. Porque, como já vimos, o método do Writer of CSV não é capaz de lidar com situações de valor ausente e inserirá um valor específico da coluna em algum outro valor da coluna. Então, esta é uma grande desvantagem do método do escritor. Mas essa situação é facilmente tratada pelo método Dictwriter por causa das chaves.