ast.Dict(keys, values)
is a class defined in the ast
module that is used to express Python dictionaries in the form of an parse()
method of ast
is called on a Python source code that contains a dictionary, the ast.Dict
class is invoked and expresses the dictionary to a node in an ast
tree data structure. The ast.Dict
class represents the Dict node type in the ast
tree. keys
and values
in the class parameters contain the list of keys and values in the dictionary in their matching order.
import astfrom pprint import pprintclass DictVisitor(ast.NodeVisitor):def visit_Dict(self,node):print('Node type: Dict\nFields: ', node._fields)ast.NodeVisitor.generic_visit(self, node)def visit_Constant(self,node):print('Node type: Constant\nFields: ', node._fields)ast.NodeVisitor.generic_visit(self, node)visitor = DictVisitor()tree = ast.parse('{"Name":Ali, "Age":27}', mode='eval')pprint(ast.dump(tree))visitor.visit(tree)
DictVisitor
class that extends from the parent class ast.NodeVisitor
. We override the predefined visit_Constant
and visit_Dict
methods in the parent class, which receive the Constant
and Dict
nodes, respectively. In the method, we print the type and the fields inside the node and call the generic_visit()
method, which invokes the propagation of the visit on the children nodes of the input node.visitor
object of the class DictVisitor
.{"Name":Ali, "Age":27}
and send it to the ast.parse()
method with mode='eval'
, which returns the result of the expression after evaluation, and store it in tree
.ast.dump()
method returns a formatted string of the tree structure in tree
.visit
method available to the visitor
objects visits all the nodes in the tree structure.Free Resources