This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: static behavior of local variables
Type: behavior Stage:
Components: None Versions: Python 2.5
process
Status: closed Resolution: not a bug
Dependencies: Superseder:
Assigned To: Nosy List: Aslanidi, mark.dickinson
Priority: normal Keywords:

Created on 2010-06-27 14:27 by Aslanidi, last changed 2022-04-11 14:57 by admin. This issue is now closed.

Messages (2)
msg108789 - (view) Author: Konstantin (Aslanidi) Date: 2010-06-27 14:27
In [12]: def func(x=[]) :
   ....:     L=x
   ....:     L.append('a')
   ....:     return L
   ....:

In [13]: func()
Out[13]: ['a']

In [14]: func()
Out[14]: ['a', 'a']

In [15]: func()
Out[15]: ['a', 'a', 'a']

In [16]: func()
Out[16]: ['a', 'a', 'a', 'a']

In [17]: x
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)

C:\Users\konstantin\<ipython console> in <module>()

NameError: name 'x' is not defined

In [18]:

In [19]: L
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)

C:\Users\konstantin\<ipython console> in <module>()

NameError: name 'L' is not defined
msg108793 - (view) Author: Mark Dickinson (mark.dickinson) * (Python committer) Date: 2010-06-27 14:35
Please see the warning in this section of the tutorial:

http://docs.python.org/tutorial/controlflow.html#default-argument-values
History
Date User Action Args
2022-04-11 14:57:02adminsetgithub: 53338
2010-06-27 14:35:50mark.dickinsonsetstatus: open -> closed

nosy: + mark.dickinson
messages: + msg108793

resolution: not a bug
2010-06-27 14:27:51Aslanidicreate