Hoy vamos a ver cómo descartar la primera línea de un archivo al leerlo con Python. En ocasiones leemos un archivo con Python pero queremos omitir la primera línea (por ejemplo, con un CSV).
En este lenguaje iteramos sobre las líneas del archivo usando, como su nombre lo dice, un iterador.
Y como es un iterador no podemos elegir a partir de dónde leer, pero sí podemos hacer que el iterador se mueva a la siguiente línea sin estar dentro del ciclo.
Leyendo un archivo
Normalmente leemos un archivo así:
with open(ruta) as archivo:
for linea in archivo:
print(linea)
Simplemente iteramos el archivo con un for in
.
Omitir primera línea de archivo en Python
Pero como te decía, al final estamos recorriendo un iterador. Así que si tú quieres omitir la primera línea, llama a next
pasándole el iterador.
La función next
devuelve el siguiente elemento del iterador. Entonces si invocamos a next
antes de recorrer el archivo, vamos a leer y omitir la primera línea, avanzando el iterador en 1.
Así:
with open(ruta) as archivo:
next(archivo) # Descartar la primera línea
for linea in archivo:
print(linea)
En este caso no estamos almacenando el resultado de llamar a next
, pero si lo hiciéramos tendríamos la primera línea. Yo no lo asigno a ninguna variable porque lo que quiero es omitir la primera línea.
Después de esto, el for
va a empezar desde la segunda línea. Ya para casos más avanzados podrías llevar un índice o contador de líneas y omitir según sea el caso.
Por aquí te dejo más tutoriales de Python.