View Single Post
Old 07-05-2020, 16:06   #5
zla_Stobb
Senior Member
 
L'Avatar di zla_Stobb
 
Iscritto dal: Jan 2009
Messaggi: 975
Quote:
Originariamente inviato da pabloski Guarda i messaggi
Stacci attento. Quella cosa lì dice: "comincia a leggere la prima riga e se il numero di bytes letti è maggiore a z, allora fermati".

Questo presuppone che tu abbia righe di lunghezza costante o comunque nota a priori. E non mi pare il tuo caso.

Già il nome può essere una cosa da 3-4 a 30 caratteri o più.
si infatti dopo quello che avevi detto ho fatto dei test

rendendomi conto che il problema non erano i \n

mettendo ora t.readlines(1) non ho più quel problema che succedeva con un k>9 perchè i nomi non erano molto lunghi e quindi caricava anche il rigo successivo

considerando che nel mio file c'è un sola stringa (punteggio@nome) per rigo

con un ciclo di t.readlines(1) non dovrei avere più problemi giusto o sbaglio ancora ?

p.s. comunque leggendo nella documentazione

readlines(hint=-1)
Read and return a list of lines from the stream. hint can be specified to control the number of lines read: no more lines will be read if the total size (in bytes/characters) of all lines so far exceeds hint.

Note that it’s already possible to iterate on file objects using for line in file: ... without calling file.readlines().

in questo modo dovrei risolvere definitivamente e esce anche tutto più pulito
__________________
Case CM Elite 430 Mobo Asus p8h67 m DissiHyper 212 EVO Cpu i5 2500K Ram Corsair XMS3 4x2gb drr3 1333mhz Vga RX460 WINDFORCE OC 4G Hardisk Seagate Barracuda 7200.12 1t Psu Corsair cx430
zla_Stobb è offline   Rispondi citando il messaggio o parte di esso