suggestions for improving code fragment please

Ian Kelly ian.g.kelly at gmail.com
Thu Feb 28 14:58:21 EST 2013


On Thu, Feb 28, 2013 at 12:47 PM, The Night Tripper <jkn+gg at nicorp.co.uk> wrote:
> Hi there
>     I'm being very dumb ... how can I simplify this fragment?
>
>
>         if arglist:
>             arglist.pop(0)
>             if arglist:
>                 self.myparm1 = arglist.pop(0)
>                 if arglist:
>                     self.myparm2 = arglist.pop(0)
>                     if arglist:
>                         self.myparm3 = arglist.pop(0)
>                         if arglist:
>                             self.parm4 = arglist.pop(0)

Perhaps this would work for you:

if arglist:
    defaults = [self.parm1, self.parm2, self.parm3, self.parm4]
    arglist = arglist[1:] + defaults[len(arglist)-1:]
    self.parm1, self.parm2, self.parm3, self.parm4 = arglist[:4]



More information about the Python-list mailing list