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
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com