Kodiologist <[email protected]> added the comment:
(Hilariously, I couldn't post this comment on bugs.python.org due to some kind
of Unicode bug ("Edit Error: 'utf8' codec can't decode bytes in position
208-210: invalid continuation byte"), so I've rendered
"\U0001D555\U0001D556\U0001D557" as "DEF" in the below.)
Thanks for clarifying the terminology re: reserved words vs. keywords.
> The effect is the same as "globals()['DEF']=1" (which is the same as
> passing 'def' or anything else that normalizes to it) and that in
> turn allows ">>> DEF", which returns 1.
This doesn't quite seem to be the case, at least on Pythons 3.9 and 3.10:
>>> globals()['DEF']=1
>>> DEF
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'def' is not defined
>>> globals()['def']=1
>>> DEF
1
It looks the dictionary interface to `globals` doesn't normalize like the
parser does.
----------
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue46520>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com