Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich bestimmte Zeilen aus einer großen Datei in Python effizient lesen?

Wie kann ich bestimmte Zeilen aus einer großen Datei in Python effizient lesen?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-08 19:39:12469Durchsuche

How to Efficiently Read Specific Lines from a Large File in Python?

Bestimmte Zeilen aus einer Datei lesen

Beim Durchlaufen einer Datei mithilfe einer for-Schleife kann es erforderlich sein, nur bestimmte Zeilen zu lesen. In Python kann man zwar eine Schleife verwenden, um alle Zeilen in einer Datei zu durchlaufen, es gibt jedoch keine integrierte Funktion zum Lesen bestimmter Zeilen, ohne die gesamte Datei zu lesen.

Es gibt jedoch eine Problemumgehung für Situationen, in denen Die Datei ist groß und das Einlesen der gesamten Datei in den Speicher ist nicht möglich. Dabei wird die Datei Zeile für Zeile durchlaufen und eine Bedingung angewendet, um die gewünschten Zeilen zu lesen:

fp = open("file")
for i, line in enumerate(fp):
    if i == 25:
        # Process 26th line
    elif i == 29:
        # Process 30th line
    elif i > 29:
        break
fp.close()

Hinweis: Die Zeilennummer in der Schleife ist nullbasiert, also die erste Zeile hat einen Index von 0.

Python 2.6 und höher:

In Python 2.6 und höher können Sie die with-Anweisung nutzen, um eine ordnungsgemäße Dateiverarbeitung sicherzustellen:

with open("file") as fp:
    for i, line in enumerate(fp):
        if i == 25:
            # Process 26th line
        elif i == 29:
            # Process 30th line
        elif i > 29:
            break

Das obige ist der detaillierte Inhalt vonWie kann ich bestimmte Zeilen aus einer großen Datei in Python effizient lesen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn