327 votes

Méthode paresseux pour la lecture de gros fichiers en Python ?

J’ai un très gros fichier 4Go et quand j’essaye de le lire mon ordinateur se bloque. Je tiens donc à lire morceau par morceau et après le traitement de chaque pièce stocker la pièce transformée dans un autre fichier et lire le morceau suivant.

Y a-t-il une méthode pour `` ces pièces ?

J’aimerais avoir une méthode paresseux.

483voto

nosklo Points 75862

Pour écrire une fonction paresseuse, il suffit d’utiliser `` :


Une autre option serait d’utiliser `` et une fonction d’assistance :


Si le fichier est axée sur la ligne, l’objet de fichier est déjà un générateur paresseux de lignes :

41voto

Anshul Points 121

file.ReadLines() prend un argument de taille en option qui se rapproche le nombre de lignes à lire dans les lignes retournées.

23voto

Paolo Tedesco Points 22442

Jetez un oeil à ce post sur Neopythonic: « Tri 1 million entiers de 32 bits à 2 Mo de RAM à l’aide de Python »

12voto

myroslav Points 1645
<pre><code></code><p><a href="http://stackoverflow.com/a/4566523/38592">http://StackOverflow.com/a/4566523/38592</a></p></pre>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X