What is a function parameter =[] for?

Ian Kelly ian.g.kelly at gmail.com
Wed Nov 18 17:11:43 EST 2015


On Wed, Nov 18, 2015 at 2:08 PM, fl <rxjwg98 at gmail.com> wrote:
> Hi,
>
> I have tried the below function and find that it can remember the previous
> setting value to 'val'. I think the second parameter has something on this
> effect, but I don't know the name and function of '=[]' in this application.
>
> Could you explain a little to me?
> Thanks,
>
>
> def eList(val, list0=[]):
>     list0.append(val)
>     return list0
> list1 = eList(12)
> list1 = eList('a')

The list0 parameter has a default value, which is [], an initially
empty list. The default value is evaluated when the function is
defined, not when it is called, so the same list object is used each
time and changes to the list are consequently retained between calls.



More information about the Python-list mailing list