首頁 > 後端開發 > Python教學 > 如何在 Python 中在文件開頭新增一行?

如何在 Python 中在文件開頭新增一行?

Linda Hamilton
發布: 2024-11-02 10:50:30
原創
505 人瀏覽過

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

就地加入到檔案開頭

嘗試使用追加模式(' a'),由於檔案指標會自動前進到結尾,使用者可能會在文件末尾遇到不想要的寫入。

要克服此限制並真正在文件開頭添加一行,可以採用多種方法:

方法一:讀取並重寫文件

如果可以將整個檔案載入到記憶體中,可以使用以下函數:

<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>
登入後複製

此方法將檔案的內容載入到變數content 中,允許將行新增至前面並將修改的內容重寫到文件的開頭。

方法2:使用檔案輸入模組

另一種方法涉及使用fileinput 模組:

<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>
登入後複製

此方法迭代檔案的行,當遇到第一行時,在其前面新增指定的行列印兩行。

此方法的確切機制尚不完全清楚,但它允許就地編輯文件,而無需將整個內容加載到內存中,這可能使其適合較大的文件。

以上是如何在 Python 中在文件開頭新增一行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板