Jak wyszukać i zamienić tekst w pliku za pomocą Pythona?

Jak wyszukać i zamienić tekst w pliku przy użyciu Pythona 3?

Oto mój kod:

import os
import sys
import fileinput

print ("Text to search for:")
textToSearch = input( "> " ) 

print ("Text to replace it with:")
textToReplace = input( "> " )

print ("File to perform Search-Replace on:")
fileToSearch  = input( "> " )
#fileToSearch = 'D:\dummy1.txt'

tempFile = open( fileToSearch, 'r+' )

for line in fileinput.input( fileToSearch ):
    if textToSearch in line :
        print('Match Found')
    else:
        print('Match Not Found!!')
    tempFile.write( line.replace( textToSearch, textToReplace ) )
tempFile.close()


input( '\n\n Press Enter to exit...' )

Plik wejściowy:

Cześć, to jest abcd hi to jest abcd

To jest fałszywy plik tekstowy.

W ten sposób działa wyszukiwanie i zastępowanie abcd

Kiedy szukam i zamieniam „ram” przez „abcd” w powyższym pliku wejściowym, działa to jak urok. Ale kiedy robię to na odwrót, tj. Zastępując „abcd” przez „ram”, niektóre znaki-śmieci pozostają na końcu.

Zastępowanie „abcd” przez „ram”

cześć to jest ram hi to jest ram

To jest fałszywy plik tekstowy.

W ten sposób działa wyszukiwanie i zastępowanie rambcd

questionAnswers(12)

yourAnswerToTheQuestion