[Python-es] Re: Número de lineas de un fichero

Hernan M Foffani hfoffani en gmail.com
Mar Ago 28 15:38:24 CEST 2007


> >> Aunque seguro que hay alguna forma mejor de hacer el iterlen.
> >
> > Considerando que es la misma forma de hacerlo que sugirio Alex Martelli
> > en este mensaje
> > <http://groups.google.com/group/comp.lang.python/browse_thread/thread/4beb65079ccd9e0e/222f50f3a4fdf2b7#7daa4427e98a334f>
> > yo diria que es suficientemente buena.
>
> Siempre es bueno coincidir con A.M. TambiÃ(c)n se podría hacer así:
>
> iterlen = lambda it: reduce(lambda x, y: x+1, it, 0)
>
> Pero además de menos legible, parece ir más lento.

para los que gustan de los "one-liners" también se podría usar
enumerate.  (creo que no se ha mencionado antes...)
usando generadores, podría ser algo así:

   max( n for n,dummy in enumerate(file('fichero.txt')) ) + 1

saludos,
-H.



Más información sobre la lista de distribución Python-es