def sed( patt_s, repl_s, filename1, filename2) :
try :
fin = open ( filename1, 'r' )
fout = open ( filename2, 'w' )
except :
print ( 'file cannot be opened or created' )
for line in fin:
if patt_s in line:
fout.write ( line.replace ( patt_s, repl_s) )
else :
fout.write ( line)
try :
fout.close ( )
fin.close ( )
except :
print ( 'Files cannot be closed' )
if __name__ == '__main__' :
sed( 'Alice' , 'BOOOOOOM!!!!' , 'alice.txt' , 'result.txt' )
ZGVmIHNlZChwYXR0X3MsIHJlcGxfcywgZmlsZW5hbWUxLCBmaWxlbmFtZTIpOgoJdHJ5OgoJCWZpbiA9IG9wZW4oZmlsZW5hbWUxLCAncicpCgkJZm91dCA9IG9wZW4oZmlsZW5hbWUyLCAndycpCglleGNlcHQ6CgkJcHJpbnQoJ2ZpbGUgY2Fubm90IGJlIG9wZW5lZCBvciBjcmVhdGVkJykKCQoJZm9yIGxpbmUgaW4gZmluOgoJCWlmIHBhdHRfcyBpbiBsaW5lOgoJCQlmb3V0LndyaXRlKGxpbmUucmVwbGFjZShwYXR0X3MsIHJlcGxfcykpCgkJZWxzZToKCQkJZm91dC53cml0ZShsaW5lKQoJCgl0cnk6CgkJZm91dC5jbG9zZSgpCgkJZmluLmNsb3NlKCkKCWV4Y2VwdDoKCQlwcmludCgnRmlsZXMgY2Fubm90IGJlIGNsb3NlZCcpCgoKaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKCXNlZCgnQWxpY2UnLCAnQk9PT09PT00hISEhJywgJ2FsaWNlLnR4dCcsICdyZXN1bHQudHh0Jyk=
stdout
file cannot be opened or created
stderr
Traceback (most recent call last):
File "./prog.py", line 22, in <module>
File "./prog.py", line 8, in sed
UnboundLocalError: local variable 'fin' referenced before assignment