Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana Cara Membaca Baris Khusus dengan Cekap dari Fail Besar dalam Python?

Bagaimana Cara Membaca Baris Khusus dengan Cekap dari Fail Besar dalam Python?

Patricia Arquette
Patricia Arquetteasal
2024-12-08 19:39:12470semak imbas

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

Membaca Baris Tertentu daripada Fail

Apabila melelaran fail menggunakan gelung for, anda mungkin perlu membaca baris tertentu sahaja. Dalam Python, sementara seseorang boleh menggunakan gelung untuk melelar ke atas semua baris dalam fail, tiada ciri terbina dalam untuk membaca baris tertentu tanpa membaca keseluruhan fail.

Walau bagaimanapun, penyelesaian tersedia untuk situasi di mana fail itu besar dan membaca keseluruhan fail ke dalam ingatan tidak dapat dilaksanakan. Ini melibatkan lelaran melalui fail baris demi baris dan menggunakan syarat untuk membaca baris yang dikehendaki:

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()

Nota: Nombor baris dalam gelung adalah berasaskan sifar, bermakna yang pertama baris mempunyai indeks 0.

Python 2.6 dan Kemudian:

Dalam Python 2.6 dan lebih baru, anda boleh memanfaatkan pernyataan with untuk memastikan pengendalian fail yang betul:

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

Atas ialah kandungan terperinci Bagaimana Cara Membaca Baris Khusus dengan Cekap dari 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