ast_utils.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:ml-utils 作者: LinxiFan 项目源码 文件源码
def visit_For(self, node):
        """
        for i in 5: pass # range(5)
        for i in 2^10: pass  # range(2, 10)
        for i in 1^100^5: pass  # range(2, 10, 5)
        """
        self.generic_visit(node)
        it = node.iter
        if isinstance(it, ast.Num):
            node.iter = self.make_Call('range', [it])
        elif self._is_range_op(it):
            # two cases, 2^10 and 1^100^5
            range_args = []
            left = it.left
            if self._is_range_op(left):
                range_args.append(left.left)
                range_args.append(left.right)
            else:
                range_args.append(left)
            range_args.append(it.right)
            node.iter = self.make_Call('range', range_args)
        return node
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号