Python - Crear un archivo csv a partir de una lista

   
Vista:

Crear un archivo csv a partir de una lista

Publicado por liz (2 intervenciones) el 20/06/2017 04:55:09
Hola foro. buenas noches.
Quisiera ver si me pudiesen ayudar, llevo un buen rato intentando y nada. tengo n elementos en una lista y quisiera guardarlos en un documento csv.

Haciendo pruebas, he intentado esto.
import numpy as np

1
2
3
4
5
6
7
8
9
10
11
l=[[1,2,3,4],[5,6,7,8]]
datos = np.asarray(l)
l1 = [5,6,7]
l2 = [8,9,10]
 
np.savetxt("output.csv",   # Archivo de salida
           datos,        # Trasponemos los datos se usa T
           fmt="%d",       # Usamos números enteros
           delimiter=","
           #newline="\n"
           )

También he intentado esto, pero me marca error
1
2
3
4
5
6
7
import csv
 
 
lista = [1,2,3]
 
file = open("eggs.csv",newline='')
spamreader = csv.writerrow(file,lista)

he intentado más pruebas, pero todas fallidas y siempre me marca error
el primer ejemplo donde hago uso de numpy si me crea el archivo csv, el problema es que no veo la forma de seguir agregando valores nuevos al archivo, y además que irán datos enteros y string.

Estoy buscando que el archivo quede así

dato 1, dato 2... dato n... dato string1
dato 1, dato 2.... dato n...dato String2

Por favor, necesito ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip

Crear un archivo csv a partir de una lista

Publicado por kip (204 intervenciones) el 20/06/2017 19:29:25
Hola, debes recordar que la funcion cs.writer() retorna un objeto el cual tiene la funciones para poder escribir sobre el csv

Return a writer object responsible for converting the user’s data into delimited strings on the given file-like object. csvfile can be any object with a write() method.....
https://docs.python.org/3/library/csv.html#csv.writer

Si te fijas en los ejemplos de la url anterior te daras cuenta que debes hacerlo asi:

1
2
3
4
5
6
7
8
import csv
 
lista = [1,2,3]
 
file = open("eggs.csv", "w", newline='')
spamreader = csv.writer(file)
spamreader.writerow(lista)
file.close()

Itentalo y avisanos si funciona.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar