I want to delete a specific line containing a specific string in Python.
Ex-
Suppose I have a file fruit.txt having the following content:
Banana
Apple
Apple1
Grapes
Now, I want to delete Apple from that file and I have made this following function:
def deleteLine():
fname = 'fruit.txt'
f = open(fname)
output = []
for line in f:
if not "Apple" in line:
output.append(line)
f.close()
f = open(fname, 'w')
f.writelines(output)
f.close()
It gives this output;
Banana
Apple
So, the main problem is that the function is deleting both Apple and Apple1 but I only want to delete “Apple”.
The required should be like this:
Banana
Apple1
Grapes
How should I change my function so that it gives the correct output?