怎么读取一行后删除掉那一行 Python

在Python中,要读取一行并删除掉它,我们可以使用open函数来打开文件,然后使用readline方法来读取一行,再使用writelines方法来写入剩余的行。下面是一个示例代码:

def delete_line(filename, line_number):
    with open(filename, 'r') as file:
        lines = file.readlines()

    with open(filename, 'w') as file:
        for i, line in enumerate(lines):
            if i != line_number - 1:
                file.write(line)

在上面的代码中,我们定义了一个delete_line函数,它接受两个参数:文件名和要删除的行号。函数首先使用open函数打开文件,并使用readlines方法读取所有行到一个列表中。

然后,我们再次使用open函数,但这次是以写入模式打开文件。接下来,我们使用enumerate函数遍历行列表,并使用write方法将非删除行写回到文件中。

在调用delete_line函数时,你只需传入文件名和要删除的行号,例如:

delete_line('example.txt', 5)

上面的代码将删除example.txt文件中的第5行。

示例

假设我们有一个名为example.txt的文件,它包含以下内容:

Line 1
Line 2
Line 3
Line 4
Line 5
Line 6

我们来调用delete_line函数并删除第5行:

delete_line('example.txt', 5)

现在,example.txt文件中的内容将变为:

Line 1
Line 2
Line 3
Line 4
Line 6

总结

读取一行并删除它需要使用open函数打开文件,使用readlines方法将所有行读入内存,然后使用enumerate函数遍历行列表并使用write方法将非删除行写回文件中。

你可以根据需要修改delete_line函数来适应不同的场景。请记住,在对文件进行任何修改之前,一定要备份文件以防止意外情况发生。