Dans mon shell Python, la suppression de __name__
le fait devenir 'builtins'
. Bien que, en vérifiant avec globals
confirme que je ne fais pas référence à __name__
à partir d'une variable globale.
Python 3.6.2 (v3.6.2:5fd33b5, Jul 8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> __name__
'__main__'
>>> del __name__
>>> __name__
'builtins'
>>> globals()[__name__]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'builtins'
Je pense que nous l'utilisons depuis une certaine fermeture. Comment ce comportement se manifeste-t-il ?