Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Membaca Baris Khusus dengan Cekap daripada Fail Besar dalam Python?

Bagaimanakah Saya Boleh Membaca Baris Khusus dengan Cekap daripada Fail Besar dalam Python?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-10 03:18:13980semak imbas

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

Bacaan Fail Khusus Baris dalam Python

Apabila memproses fail teks besar, selalunya perlu membaca baris tertentu sahaja berbanding keseluruhan fail . Ini boleh mengoptimumkan prestasi dan menjimatkan memori. Python menawarkan cara untuk mencapai ini tanpa memuatkan fail lengkap ke dalam ingatan.

Membaca Baris Tertentu Menggunakan Nombor Baris

Andaikan anda ingin membaca baris 26 dan baris 30 daripada fail teks yang besar. Pendekatan yang mudah adalah untuk membuka fail dan menggunakan gelung for untuk melelaran pada baris:

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

Perhatikan bahawa i == n - 1 untuk baris ke-n. Ini membolehkan anda menentukan nombor baris yang dikehendaki dengan tepat.

Sebagai alternatif, jika anda menggunakan Python 2.6 atau lebih baru, anda boleh menggunakan sintaks berikut:

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

Pendekatan ini mengendalikan fail secara automatik penutup dan lebih ringkas.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membaca Baris Khusus dengan Cekap daripada Fail Besar dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn