Python LibCST:将任意节点转换为代码
是否可以将任意LibCST节点转储到Python代码中?我的用例是,我想为匹配特定命名方案的函数提取代码。我可以提取所需的Python LibCST:将任意节点转换为代码,python,abstract-syntax-tree,libcst,Python,Abstract Syntax Tree,Libcst,是否可以将任意LibCST节点转储到Python代码中?我的用例是,我想为匹配特定命名方案的函数提取代码。我可以提取所需的FunctionDef节点,但我似乎找不到将它们转换为代码的方法。可以使用模块类中的方法 您可以按如下方式使用它: import libcst function_def = libcst.parse_statement("def hello_world():\n print('Hello World')") print(libcst.Module([]
FunctionDef
节点,但我似乎找不到将它们转换为代码的方法。可以使用模块
类中的方法
您可以按如下方式使用它:
import libcst
function_def = libcst.parse_statement("def hello_world():\n print('Hello World')")
print(libcst.Module([]).code_for_node(function_def))
这将产生输出:
def hello_world():
print('Hello World')