being python the second function definition overrides the first.
drop this code in a file called test.py
# test.py
def my_func():
print "i will never get called"
def my_func():
print "awesome"
my_func()
and run it
$ python test.py
awesome
no errors, same applies for methods on objects.