当前位置:   article > 正文

关于python抽象语法树(AST)_python ast stmt

python ast stmt

在学习tvm script的过程中接触到了python抽象语法树,记录一下
lineno
col_offset

ast.expr 和 ast.stmt 子类的实例有 lineno 和 col_offset 属性。lineno 是源代码的行数(从1开始, 所以第一行行数是1),而 col_offset 是该生成节点第一个token的UTF-8字节偏移量。记录下UTF-8偏移量的原因是parser内部使用UTF-8。
  • 1

“”“
什么是上下文管理器?

这里先了解下上下文,上下文是 context 直译的叫法,在程序中用来表示代码执行过程中所处的前后环境,比如在文件操作时,文件需要打开关闭,而文件读写操作就处于文件操作的上下文环境中。

上下文管理器,上下文管理器是指在一段代码执行之前,执行一些预处理的工作,代码执行之后再执行一些清理工作。

上下文管理器中有__enter__()和 exit() 两个方法,enter()方法在执行 with 后面的语句时执行,一般用来处理操作前的内容,比如一些创建对象,初始化等; exit() 方法在 with 内的代码执行完毕后执行,一般用来处理一些善后收尾工作,比如文件的关闭,数据库的关闭等。

简单来说,上下文管理器的原理过程如下:

调用__enter__()方法,进行预处理操作执行用户操作调用 __exit__() 方法,完成清理操作
”“”
  • 1
  • 2

operator 模块导出了一组与 Python 的内在运算符相对应的高效函数。 例如,operator.add(x, y) 等价于表达式 x+y。 许多函数名称是用于特殊方法的名称,没有双下划线。 为了向后兼容,其中许多都有保留双下划线的变体。 为清楚起见,首选不带双下划线的变体。

函数签名(或类型签名,或方法签名) 定义函数或方法的输入和输出 。 签名可以包括:参数及其类型。 返回值和类型。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/597667
推荐阅读
相关标签
  

闽ICP备14008679号