flattener.py 文件源码

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

项目:hatlog 作者: alehander42 项目源码 文件源码
def flatten_subscript(self, node):
        value = self.flatten(node.value)
        node_type = self.new_type()
        if isinstance(node.slice, ast.Index):
            index = self.flatten(node.slice.value)
            self.nodes.append(('z_index', [value, index], node_type))
        else:
            lower = self.flatten(node.slice.lower) if node.slice.lower else None
            upper = self.flatten(node.slice.upper) if node.slice.upper else None
            if lower and upper is None:
                upper = lower
            elif lower is None and upper:
                lower = upper
            else:
                raise ValueError('hatlog expects only slice like [:x], [x:] or [x:y]')
            self.nodes.append(('z_slice', [value, lower, upper], node_type))
        return node_type
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号