首页 >后端开发 >Python教程 >如何在 Python 中向文件开头添加一行?

如何在 Python 中向文件开头添加一行?

Linda Hamilton
Linda Hamilton原创
2024-11-02 03:58:02266浏览

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

如何在文件开头添加一行

假设你想在文件开头添加一行,但是使用标准追加模式Python,该行被追加到文件末尾。如何才能实现这一目标?

实现

有两种方法可以实现这一目标:

第一种方法(内存密集型):

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

在此方法中,将整个文件读入内存,在开头添加行,然后将修改的内容覆盖回文件中。

第二种方式(流式传输):

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

此方法逐行流式传输文件,覆盖原始文件。它使用 fileinput 模块迭代各行,并将给定行插入到第一行的开头。

方法的选择取决于文件大小和可用内存。对于大文件,首选第二种方式,以避免内存问题。

以上是如何在 Python 中向文件开头添加一行?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn