我正在寻找一种从访问者节点获取代码的方法。例子:
import libcst
code_example = """
from ast import parse
threshold = 1
print(threshold)
"""
class CodeVisitor(libcst.CSTVisitor):
def visit_Assign(self, node: libcst.Assign) -> bool:
print(node)
return True
demo = libcst.parse_module(code_example)
demo.visit(CodeVisitor())
在上面的代码中,我想获取节点的代码(即阈值 = 1)。但似乎 libcst 不提供这种支持。我进一步环顾四周,发现了一个属于 Module的函数名code_for_node(node: libcst._nodes.base.CSTNode) → str
libcst.Module.code_for_node。但是我找不到足够的帮助来在我的代码中使用它。
期待帮助。提前致谢!