Contar número de lineas en un fichero con Python

Hola a todos, os voy a enseñar como se cuenta el número de lineas en un fichero con Python.

Fichero que vamos a utilizar:

linea1

linea2

linea3

Para saber el numero de lineas, de una forma rápida en Python es la siguiente:


fichero = open('datos', 'r')

print (len(fichero.readlines())) # devolvera 3

fichero.close()

Tenemos que tener en cuenta que leera las lineas desde donde estamos, por ejemplo:


fichero = open('datos', 'r')

fichero.readline()

print (len(fichero.readlines())) # devolvera 2

fichero.close()

La forma de solucionar esto es con seek:


fichero = open('datos', 'r')

fichero.readline()

fichero.seek(0)

print (len(fichero.readlines())) # devolvera 3

fichero.close()

Te dejo una simple función para que la utilices en tus proyectos con un ejemplo:


def numLineasFichero(fichero):

	try:
		fichero.seek(0)
		return len(fichero.readlines())
	except AttributeError:
		print("Debes insertar un fichero")
		return -1

fichero = open('datos', 'r')

print(numLineasFichero(fichero))

fichero.close()


def numLineasFicheroRuta(ruta):
	numLineas = -1
	try:
		fichero = open(ruta, 'r')
		numLineas = len(fichero.readlines())
		fichero.close()
	except AttributeError:
		print("Debes insertar un fichero")
	except FileNotFoundError:
		print("la ruta no es correcta")
	return numLineas


print(numLineasFichero('datos')) #Si la ruta no es correcta, da error

Copia solo el def.

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

 

¿Te ha gustado y quieres apoyarme? ¡Sé mi patrón!
Etiquetas

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *