Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menambah Baris pada Permulaan Fail dalam Python?

Bagaimana untuk Menambah Baris pada Permulaan Fail dalam Python?

Linda Hamilton
Linda Hamiltonasal
2024-11-02 03:58:02169semak imbas

How to Add a Line to the Beginning of a File in Python?

Cara Menambah Baris pada Permulaan Fail

Andaikan anda ingin menambah baris pada permulaan fail, tetapi menggunakan mod tambah standard dalam Python, baris itu dilampirkan pada penghujung fail. Bagaimanakah anda boleh mencapai ini?

Pelaksanaan

Terdapat dua cara untuk mencapai ini:

Cara Pertama (Intensif Memori):

<code class="python">def line_prepender(filename, line):
    with open(filename, 'r+') as f:
        content = f.read()
        f.seek(0, 0)
        f.write(line.rstrip('\r\n') + '\n' + content)</code>

Dalam kaedah ini, keseluruhan fail dibaca ke dalam ingatan, baris ditambah pada permulaan, dan kemudian kandungan yang diubah suai ditimpa semula ke dalam fail.

Cara Kedua (Penstriman):

<code class="python">def line_pre_adder(filename, line_to_prepend):
    f = fileinput.input(filename, inplace=1)
    for xline in f:
        if f.isfirstline():
            print(line_to_prepend.rstrip('\r\n') + '\n' + xline, end='')
        else:
            print(xline, end='')</code>

Kaedah ini menstrim fail baris demi baris, menimpa fail asal. Ia menggunakan modul input fail untuk melelar melalui baris dan memasukkan baris yang diberikan pada permulaan baris pertama.

Pilihan kaedah bergantung pada saiz fail dan memori yang tersedia. Cara kedua lebih disukai untuk fail besar untuk mengelakkan masalah ingatan.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Baris pada Permulaan 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