To be honest, I was expecting some sort of error, like 'you can't rename two nested functions with same name in a same body like that' , Can we define any number of functions with same name in python ?
In [40]: def add(i,j):
....: def add(i,j):
....: print i+j
....: def add(i,j):
....: print i-j
....: return add(i,j)
....:
In [41]: add(5,4)
1
Is this Overloading of function, or Overriding of function ??