Python 为什么当';什么是关键词?

Python 为什么当';什么是关键词?,python,keyword,python-internals,Python,Keyword,Python Internals,\uuuuu调试\uuuu是一个内置常量,根据,它看起来不像是一个实现细节 尝试分配给它时(文档状态不支持此操作),将显示以下错误消息: >>> __debug__ = False File "<stdin>", line 1 SyntaxError: assignment to keyword 这似乎很奇怪无、真和假也列为常量,包含在kwlist中 为什么\uuuuu调试\uuuu不在关键字列表中?从技术上讲,它不是Python语法意义上的关键字。编译器中有

\uuuuu调试\uuuu
是一个内置常量,根据,它看起来不像是一个实现细节

尝试分配给它时(文档状态不支持此操作),将显示以下错误消息:

>>> __debug__ = False
  File "<stdin>", line 1
SyntaxError: assignment to keyword
这似乎很奇怪<代码>无、
也列为常量,包含在
kwlist


为什么
\uuuuu调试\uuuu
不在关键字列表中?

从技术上讲,它不是Python语法意义上的关键字。编译器中有一个阻止赋值给
\uuuuu debug\uuuuu
,但就语法而言,
\uuuu debug\uuuuu
不是关键字,
关键字.kwlist
是从语法生成的。

它是一个常量而不是关键字<代码>定义,
等都是关键词。@AshwiniChaudhary:
\uuuu调试\uuuuu
在这里看起来确实是一个疏忽。然而,文档中确实指出:我认为@cᴏʟᴅsᴘᴇᴇᴅ 这基本上是正确的。基于,看起来像是为了简单起见在其他关键字旁边检查了
\uuuuuuu调试\uuuuuuuuu
,然后人们意识到这必须改变,并且做了一些稍微懒惰的复制粘贴,而不是考虑新的错误消息。@cᴏʟᴅsᴘᴇᴇᴅ 我查看了其他人发布的链接,点击“责怪”,转到该行,查看该行的最新提交,发现它不相关,然后单击“查看此更改之前的责怪”。基本上可以让你看到一条线的历史。
>>> from keyword import kwlist
>>> '__debug__' in kwlist
False