Python_Tips

*, ** (splat)

Arbitrary argument lists

In a function definition * provides an object with an arbitrary number of arguments; it must be after zero or more normal arguments.

def double(args): return [a2 for a in args] double(1,2,8)

Unpacking argument lists

In a function call: *args: unpacks items from a list or tuple when provided as an argument.

limits = [3,6] range(*limits)

**kwargs: unpacks a dictionary for keyword arguments.