关于Python概念层次结构的问题

时间:2015-12-31 23:29:29

标签: python syntax structure

我正在阅读Learning Python (3rd Edition),由Mark Lutz阅读,而我正在处理Python语法的细节。

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

  1. 程序由模块组成
  2. 模块包含语句
  3. 语句包含表达式
  4. 表达式创建和处理对象
  5. 我对Python语句的定义有点困惑 我已经听过表达式被描述为任何有价值的东西,但也可以包含诸如添加等内容。

    声明语句是对驱动模块逻辑的表达式进行结构化操作是否安全?

3 个答案:

答案 0 :(得分:3)

是的,你快到了。

表达式可以评估为

另一方面,陈述会导致一些动作

该动作可以基于表达式的结果在某个对象上,该表达式可能涉及或可能不涉及其他一些对象。

答案 1 :(得分:2)

我通过Google搜索快速找到了这个搜索结果,是您在寻找的地方吗?

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

另一方面,“语句(参见1,2)是构成Python代码行(或几行)的所有内容。请注意,表达式也是语句。”

答案 2 :(得分:1)

我非常警惕像这样的分类,特别是尝试将它们变成层次结构。表达式也可以是例如函数调用;我猜这属于你的“任何值的”定义,因为函数总是返回一个值,即使它是None。

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