使用Python在大文件的最后一行之前写几行

使用Python在大文件的最后一行之前写几行,python,file,io,Python,File,Io,我有一个非常大的文件(5MB),我需要在最后一行之前添加几行。e、 g. file.txt text-1 text-2 text-3 text-10 text-1 text-2 text-3 few-text-1 few-text-2 text-10 在最后一行之前添加几行之后。 file.txt text-1 text-2 text-3 text-10 text-1 text-2 text-3 few-text-1 few-text-2 text-10 在pyt

我有一个非常大的文件(5MB),我需要在最后一行之前添加几行。e、 g.
file.txt

text-1
text-2
text-3
text-10
 text-1
 text-2
 text-3
 few-text-1
 few-text-2
 text-10
在最后一行之前添加几行之后。 file.txt

text-1
text-2
text-3
text-10
 text-1
 text-2
 text-3
 few-text-1
 few-text-2
 text-10

在python中,最好的方法是什么。

显然,我不知道最好的方法,但您可以使用直接方法

new_lines = ['one \n', 'two \n']

with open('test.txt', 'r+') as f:
    pos, text = 0, ''
    while True:
        # save last line value and cursor position
        prev_pos, pos = pos, f.tell()
        prev_text, text = text, f.readline()  
        if text == '':
            break

    f.seek(prev_pos, 0) # replace cursor to the last line

    for line in new_lines: # write new lines
        f.write(line)

    f.write(prev_text) # write old last line

请参考此链接:搜索特定行,并在文件以附加模式打开时添加内容是的,我正在寻找类似的内容。塔克斯。