Une boucle dans un fichier texte, readline() de la construction échoue sur des fichiers volumineux

En Python 2.6 et 2.7, j'aurais pensé que ces deux constructions identiques:

Méthode Un

i=0
f=open('fred.txt','r')
for line in f.readline():
    i+=1
print i

Méthode B

i=0
f=open('fred.txt','r')
for line in f:
    i+=1
print i

Toutefois, lorsque fred.txt a grandi pour être de 74 000 lignes, chaque ligne 2,684 caractères, Méthode Un imprime 2685 tout Méthode B imprime 74000. De toute évidence, la Méthode B est préféré, mais pourquoi la Méthode de travail pour les petits fichiers, mais ne parviennent pas pour les gros fichiers?

OriginalL'auteur WombatPM | 2010-12-31