On 10/10/05, Nick Coghlan <[EMAIL PROTECTED]> wrote: > cmd, *args = input.split()
These examples also have a reasonable implementation using list.pop(), albeit one that requires more typing. On the plus side, it does not violate DRY and is explicit about the error cases. args = input.split() try: cmd = input.pop(0) except IndexError: cmd = '' > def func(*args, **kwds): > arg1, arg2, *rest = args # Unpack the positional arguments rest = args # or args[:] if you really did want a copy try: arg1 = rest.pop(0) arg2 = rest.pop(0) except IndexError: raise TypeError("foo() takes at least 2 arguments") paul _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com