Op 20-11-15 om 01:33 schreef Steven D'Aprano: > On Fri, 20 Nov 2015 07:57 am, Marko Rauhamaa wrote: > >> Laura Creighton <l...@openend.se>: >> >>> My experience says that the people who are confused want lists to >>> behave like tuples. period. i.e. they don't want lists to be mutable. >> I think it's simpler than that. When you have: >> >> def f(x=[]): >> y = [] >> >> the first [] is evaluated when "def" is executed, while the latter [] is >> evaluated whenever "f" is executed. It's easy to be confused. > It shouldn't be. The function declaration > > def f(x=[]): > > is executed only once. The function body, conveniently indented to make it > stand out: > > y = [] > > is executed every time you call the function.
What exactly is your point? People's confusions don't disappear because you as an expert have a good understanding of what is going on and so are no longer confused. Some aspects in the langauage are easily grasped and other aspects tend to create confusion. I see nothing wrong with people trying to point out what the cause of this confusion could be. You arguing that people shouldn't be confused is not helping. -- Antoon. -- https://mail.python.org/mailman/listinfo/python-list