On 11/30/2015 12:15 PM, Ulli Horlacher wrote:
I try to to implement a "static variable" inside a function:
def main():
a(1)
a(2)
a()
print(a.x)
if 'a.x' in globals(): print('global variable')
if 'a.x' in locals(): print('local variable')
def a(x=None):
if not x is None: a.x = x
print(':',a.x)
main()
When I run this code, I get:
: 1
: 2
: 2
2
This is exactly what I expect.
But what is a.x?
It is neither a variable in globals() nor in locals()
a.x is an attribute of the object a.
--
Terry Jan Reedy
--
https://mail.python.org/mailman/listinfo/python-list