Diferencia entre revisiones de «Usuario:Lmorillas/modulo programacion/python/csv»

De WikiEducator
Saltar a: navegación, buscar
(Página creada con '=== Ficheros CSV === La información de una hoja de cálculo se puede exportar/importar desde un fichero [http://es.wikipedia.org/wiki/CSV csv]. Python tiene soporte para tratar…')
 
Línea 1: Línea 1:
=== Ficheros CSV ===
+
{{DISPLAYTITLE:Ficheros CSV}}
 +
 
 +
== Ficheros CSV ==
 
La información de una hoja de cálculo se puede exportar/importar desde un fichero [http://es.wikipedia.org/wiki/CSV csv]. Python tiene soporte para tratar ficheros csv.
 
La información de una hoja de cálculo se puede exportar/importar desde un fichero [http://es.wikipedia.org/wiki/CSV csv]. Python tiene soporte para tratar ficheros csv.
 
Un fichero csv es un fichero de texto.
 
Un fichero csv es un fichero de texto.
Línea 6: Línea 8:
 
<!-- http://www.bde.es/webbde/es/estadis/infoest/htmls/recomendaciones.html -->
 
<!-- http://www.bde.es/webbde/es/estadis/infoest/htmls/recomendaciones.html -->
  
==== Lectura ====
+
== Lectura ==
 
<source lang="python">
 
<source lang="python">
 
import csv
 
import csv
Línea 22: Línea 24:
 
</source>
 
</source>
  
==== Escritura====
+
== Escritura==
 
<source lang="python">
 
<source lang="python">
 
with open('codigo_ascii.txt', 'w') as fout:
 
with open('codigo_ascii.txt', 'w') as fout:
Línea 30: Línea 32:
 
         writer.writerow((chr(ascii_a+n), ascii_a + n))
 
         writer.writerow((chr(ascii_a+n), ascii_a + n))
 
</source>
 
</source>
==== Quoting ====
+
== Quoting ==
 
  writer = csv.writer(f, quoting=csv.QUOTE_NONNUMERIC)
 
  writer = csv.writer(f, quoting=csv.QUOTE_NONNUMERIC)
==== Dialectos ====
+
== Dialectos ==
 
  >>> csv.list_dialects()
 
  >>> csv.list_dialects()
 
  ['excel-tab', 'excel']
 
  ['excel-tab', 'excel']
Línea 38: Línea 40:
 
Se pueden crear dialectos:
 
Se pueden crear dialectos:
 
  csv.register_dialect(nombre, delimiter="|")
 
  csv.register_dialect(nombre, delimiter="|")
==== Usando nombres de campos ====
+
== Usando nombres de campos ==
 
<source lang="python">
 
<source lang="python">
 
with open('zaragoza_2010_10.csv') as fin:
 
with open('zaragoza_2010_10.csv') as fin:

Revisión de 19:38 21 nov 2011


Ficheros CSV

La información de una hoja de cálculo se puede exportar/importar desde un fichero csv. Python tiene soporte para tratar ficheros csv. Un fichero csv es un fichero de texto.

Lectura

import csv
with open('zaragoza_2010_10.csv') as fin:
    reader = csv.reader(fin, delimiter=";")
    for fila in reader:
        print fila
['Países', 'HOMBRES', 'MUJERES', 'TOTAL']
['Rumania', '16704', '14487', '31191']
['Ecuador', '5612', '5713', '11325']
['Marruecos', '5042', '3007', '8049']

Escritura

with open('codigo_ascii.txt', 'w') as fout:
    writer = csv.writer(fout)
    ascii_a = ord('a')
    for n in range(26):
        writer.writerow((chr(ascii_a+n), ascii_a + n))

Quoting

writer = csv.writer(f, quoting=csv.QUOTE_NONNUMERIC)

Dialectos

>>> csv.list_dialects()
['excel-tab', 'excel']

Se pueden crear dialectos:

csv.register_dialect(nombre, delimiter="|")

Usando nombres de campos

with open('zaragoza_2010_10.csv') as fin:
    # cuidado, toma la primera fila como títulos
    # usad parámetro fieldnames si no
    reader = csv.DictReader(fin, delimiter=";")