`return`或`del`的类型是什么?

时间:2015-10-02 10:19:00

标签: python syntax naming

我不认为它们是函数,我不能使用type(return)来得到答案(它会引发错误)。

他们叫什么?我可以定义类似的东西吗?

1 个答案:

答案 0 :(得分:6)

returndel语句。它们不是物体,所以它们没有类型。语句构成语言的语法,对象构成语法操作的数据模型。

请参阅Simple Statements reference page了解其文档。还有Compound Statements;包含更多语句组的语句。

由于delreturn都是语句,因此它们的名称也是reserved keywords,这意味着您无法使用它们来创建标识符。语句中使用的所有单词都是关键字 * ,但并非所有关键字都是(部分)语句。

您无法在Python中定义自己的语句,您必须自己扩展语言实现(因此扩展Python语法,标记生成器,解析器,AST模型和解释器)。

* ,当前的例外是async and await,它们暂时不是协同程序之外的关键字,以帮助将现有代码转换为Python 3.5;现在将它们作为关键字可能会破坏太多尚未使用协程 的现有代码。见PEP 492 transition plan;计划是在Python 3.7中将它们设为关键字。