关于 Python 概念层次的问题

Questions about Python conceptual hierarchy

我正在通读 Mark Lutz 的 Learning Python (3rd Edition),我在处理 Python 语法的具体细节部分。

他定义 Python 语言结构层次结构如下:

  1. 程序由模块组成
  2. 模块包含语句
  3. 语句包含表达式
  4. 表达式创建和处理对象

我对 Python 语句的定义有点困惑。
我听说表达式被描述为任何值,但也可以包含加法等内容。

可以安全地说语句是对驱动模块逻辑的表达式的结构化操作吗?

我通过快速 Google 搜索找到了这个,是您要找的吗?

What is the difference between an expression and a statement in Python?

"Statements (see 1, 2), on the other hand, are everything that can make up a line (or several lines) of Python code. Note that expressions are statements as well."

我对这样的 class 化非常警惕,尤其是试图将它们变成一个层次结构。例如,表达式也可以是函数调用;我想这属于你的 "anything that is a value" 定义,因为一个函数总是 returns 一个值,即使它是 None.

声明就是一切;赋值、流程控制(例如定义 for 或 while 循环、try/except、break、continue...)、引入函数或 class 定义(defclass 关键字),依此类推。

是的,你快到了。

表达式是一些求值为的东西。

另一方面,陈述会引起一些行动

根据可能涉及也可能不涉及某些其他对象的表达式的结果,该操作可以针对某个对象。