[Python] Leggere n righe da un file.

Giampaolo Rodola' g.rodola a gmail.com
Lun 13 Maggio 2013 12:43:18 CEST


Il 12 maggio 2013 22:51, Gollum1 <gollum1.smeagol1 a gmail.com> ha scritto:
> 2013/5/12 Carlos Catucci <carlos.catucci a gmail.com>:
>> Allora un semplice help su readlines
>>
>> readlines(...)
>>     readlines([size]) -> list of strings, each a line from the file.
>>
>>     Call readline() repeatedly and return a list of the lines so read.
>>     The optional size argument, if given, is an approximate bound on the
>>     total number of bytes in the lines returned.
>
> quindi dovrebbe essere un numero di byte finito per ogni riga? e non
> il numero di righe?

No, è il numero approssimativo di byte che viene letto finchè non
viene incontrato almeno un separatore di linea.
Non c'entra con il numero di righe che vengono tornate.
E' il parametro che viene passato internamente a read(2) [1] insomma,
e sui dati tornati da read(2) solo successivamente viene fatta la
ricerca dei separatori.
Tipicamente ti interessa usarlo quando leggi file di testo e non ti
interessa avere necessariamente tutte le linee, purchè non ti finisca
troppa roba in memoria  (esempio:
http://code.activestate.com/recipes/577968-log-watcher-tail-f-log/).
Italiano sgangherato a parte spero di essere stato più o meno chiaro. =)

[1] http://linux.die.net/man/2/read


--- Giampaolo
https://code.google.com/p/pyftpdlib/
https://code.google.com/p/psutil/
https://code.google.com/p/pysendfile/


Maggiori informazioni sulla lista Python