Deleting a line from a text file

2019-01-15 22:49发布

How to you delete a specific line from a text file using readlines()

like:

f_open = open("textfile.txt", "r")
lines = f_open.readlines()

How do you use lines to choose a line in textfile.txt and delete it?

Sorry if it doesn't make sense.

2条回答
干净又极端
2楼-- · 2019-01-15 23:09

You cant delete a line from a file (or in very specific condition)

I would try to rewrite (in another file) all the content but the line, and then replace the original file with the new one.

This option only works if file is reasonnably small.

Deleting a specific line in a file (python)

查看更多
太酷不给撩
3楼-- · 2019-01-15 23:16

Use the fileinput module's inplace functionality. Refer Optional in-place filtering section at fileinput. The example below deletes the first line from a file:

import fileinput
import sys

for line_number, line in enumerate(fileinput.input('myFile', inplace=1)):
  if line_number == 0:
    continue
  else:
    sys.stdout.write(line)
查看更多
登录 后发表回答