Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk menyediakan Baris ke Permulaan Fail dalam Python?

Bagaimana untuk menyediakan Baris ke Permulaan Fail dalam Python?

Linda Hamilton
Lepaskan: 2024-11-02 10:50:30
asal
506 orang telah melayarinya

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

Inplace Prepending ke Permulaan Fail

Apabila cuba menambah baris pada permulaan fail menggunakan mod tambah (' a'), pengguna mungkin menghadapi tulisan yang tidak diingini pada penghujung fail kerana penuding fail secara automatik memajukan ke penghujung.

Untuk mengatasi had ini dan benar-benar menambah baris ke permulaan fail, beberapa kaedah boleh digunakan :

Kaedah 1: Membaca dan Menulis Semula Fail

Jika memuatkan keseluruhan fail ke dalam memori boleh dilaksanakan, fungsi berikut boleh digunakan:

<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>
Salin selepas log masuk

Pendekatan ini memuatkan kandungan fail ke dalam kandungan berubah-ubah, membenarkan baris didahulukan dan kandungan yang diubah suai ditulis semula ke permulaan fail.

Kaedah 2: Menggunakan Input Fail Modul

Pendekatan alternatif melibatkan penggunaan modul input fail:

<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,
        else:
            print xline,</code>
Salin selepas log masuk

Kaedah ini berulang ke atas baris fail, dan apabila menemui baris pertama, prapreprepkan baris yang ditentukan kepadanya sebelum mencetak kedua-dua baris.

Mekanisme tepat kaedah ini tidak sepenuhnya jelas, tetapi ia membenarkan pengeditan menggantikan fail tanpa perlu memuatkan keseluruhan kandungan ke dalam memori, yang berpotensi menjadikannya sesuai untuk fail yang lebih besar.

Atas ialah kandungan terperinci Bagaimana untuk menyediakan Baris ke Permulaan Fail dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan