On Fri, 13 May 2005 02:52:34 -0700, Xah Lee wrote: > i wanted to define a function where the number of argument matters. > Example: > > def Range(n): > return range(n+1) > > def Range(n,m): > return range(n,m+1) > > def Range(n,m,step): > return range(n,m+1,step) > > this obvious doesn't work. The default argument like > Range(n=1,m,step=1) obviously isn't a solution. > > can this be done in Python? > > or, must the args be changed to a list? >
def Range(n,m=None,step=1): if m is None: n,m = 0,n+1 else: n,m = n,m+1 return range(n,m,step) -- http://mail.python.org/mailman/listinfo/python-list