Python / 编程语言 · 2023年 10月 21日 0

Python

21 次浏览

作为一门脚本语言,在人工智能领域用起来方便灵活,语法简洁自由是很大原因。

查看字节码

如下示例用dis库查看字节码:

  >>> import dis
  >>> dis.dis(lambda x, y, z: (x + y) * z)
  1           0 LOAD_FAST                0 (x)
              2 LOAD_FAST                1 (y)
              4 BINARY_ADD
              6 LOAD_FAST                2 (z)
              8 BINARY_MULTIPLY
             10 RETURN_VALUE

AST

如下示例用ast库查看抽象语法树。

>>> import ast
>>> ast.dump(ast.parse("(3 - 1) * 2"))
'Module(body=[Expr(value=BinOp(left=BinOp(left=Num(n=3), op=Sub(), right=Num(n=1)), op=Mult(), right=Num(n=2)))])'