from __future__ import print_function
import __builtin__

oldprint = __builtin__.print

def myprint(*args, **kwargs):
    oldprint('myprint', end='! ') # print to sys.stdout
    oldprint(*args, **kwargs)
    
__builtin__.print = myprint # monkey-patch, henceforth `print` refers to `myprint`

print('abc')

# note: it won't help you against `sys.stdout.write()`, `os.write()`, modules that don't use `print_function`, etc