I am new to python. But I know about method overloading. But I am confusion with overloading in python. Here my confusion code,
class OverLoad(object):
    """docstring for OverLoad"""
    def __init__(self, arg):
        super(OverLoad, self).__init__()
        self.arg = arg
    def adder(a, b):
        print a,b
    def adder(*a):
        print a
    def adder(a):
        print a
    def adder():
        print "no arg"
And please explain the above code.
 
     
    