On Thu, 24 Sep 2020 18:13:54 +0200
Mauro Carvalho Chehab <[email protected]> wrote:
> > How can this possibly work without a "global namespace" declaration in
> > markup_namespace()?
>
> ... While I'm not a python expert, the namespace variable is global
> because it was defined outside the "markup_namespace" function.
Assignments within functions are *always* local unless declared global.
Try this:
$ python3
>>> x = 0
>>> def y(v):
>>> x = v
>>>
>>> y(1)
>>> x
0
>>>
So your assignment to "namespace" in markup_namespace() cannot change the
global, since it's not declared global.
jon