Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk mengekstrak N Baris Pertama Fail dalam Python?

Bagaimana untuk mengekstrak N Baris Pertama Fail dalam Python?

Linda Hamilton
Linda Hamiltonasal
2024-10-17 23:25:29912semak imbas

How to Extract the First N Lines of a File in Python?

Mendapatkan semula N Baris Pertama Fail

Selalunya, apabila bekerja dengan fail data mentah yang besar, ia menjadi perlu untuk mengekstrak nombor tertentu baris untuk pemprosesan atau analisis selanjutnya. Dalam Python, terdapat pelbagai pendekatan untuk menyelesaikan tugasan ini.

Membaca N Baris Pertama Menggunakan Pemahaman Senarai

Kaedah yang mudah dan berkesan melibatkan penggunaan pemahaman senarai:

<code class="python">with open(path_to_file) as input_file:
    head = [next(input_file) for _ in range(lines_number)]
print(head)</code>

Pendekatan ini berulang melalui fail input menggunakan fungsi next() dan menyimpan barisan_number baris pertama dalam senarai kepala.

Menggunakan Fungsi islice()

Pendekatan lain memanfaatkan modul itertools Python:

<code class="python">from itertools import islice

with open(path_to_file) as input_file:
    head = list(islice(input_file, lines_number))
print(head)</code>

Di sini, fungsi islice() digunakan untuk melelaran ke atas baris pertama baris_number fail input, mencipta senarai baris yang diekstrak.

Kesan Sistem Pengendalian

Pelaksanaan yang diterangkan di atas harus berfungsi tanpa mengira sistem pengendalian yang digunakan. Walau bagaimanapun, perlu diingat bahawa dalam Python 2, fungsi next() dikenali sebagai xrange(), yang mungkin memerlukan pelarasan yang sepadan dalam pangkalan kod lama.

Atas ialah kandungan terperinci Bagaimana untuk mengekstrak N Baris Pertama Fail 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