仅用一位数字解析源代码

问题描述 投票:0回答:1

能否请教一下,CPython 如何解析仅包含一个字符的文件

1

特别是,为什么

ast.parse("3")
返回
...Expr(...)...
(我相信)Python的源代码是一个语句列表?

换句话说,阅读语法我如何从

file
到...
atom
(我猜)?

python parsing cpython
1个回答
1
投票

表达式也可以是语句,规则顺序为:

file -> statements -> statement -> 
    simple_stmts -> simple_stmt -> star_expressions -> star_expression -> 
    expression

毕竟,

func(x)
也是一个表达式,并且文件
print('Hello world!')
是完全有效的。

© www.soinside.com 2019 - 2024. All rights reserved.