What is ast.Delete(targets) in Python?
ast.Delete(targets) is a class defined in the ast module that expresses the del statement in Python in the form of an parse() method of ast is called on a Python source code that contains the del keyword, the ast.Delete class is invoked, which expresses the del statement to a node in an ast tree data structure. The ast.Delete class represents the Delete node type in the ast tree. In the class parameter, targets contains the list of nodes on which the del statement is called. The target node types can be any of the following:
Name: a variable in Python.Attribute: an attribute of a Python object such asstudent.age.Subscript: a subscripted object such asb[1].
Example
import astfrom pprint import pprintclass DeleteVisitor(ast.NodeVisitor):def visit_Delete(self, node):print('Node type: Delete\nFields:', node._fields)ast.NodeVisitor.generic_visit(self, node)def visit_Name(self, node):print('Node type: Name\nFields:', node._fields)ast.NodeVisitor.generic_visit(self, node)visitor = DeleteVisitor()tree = ast.parse('del a,b,c')pprint(ast.dump(tree))visitor.visit(tree)
Explanation
- We define a
DeleteVisitorclass that extends from the parent classast.NodeVisitor. We override the predefinedvisit_Deleteandvisit_Namemethods in the parent class, which receive theDeleteandNamenodes, respectively. In the method, we print the type and the fields inside the node and call thegeneric_visit()method, which invokes the propagation of visit on the children nodes of the input node. - We initialize a
visitorobject of the classDeleteVisitor. - We write the Python statement
del a,b,cand send it to theast.parse()method, which returns the result of the expression after evaluation, then store it intree. - The
ast.dump()method returns a formatted string of the tree structure intree. - The
visitmethod available to thevisitorobject visits all the nodes in the tree structure.
Free Resources
Copyright ©2026 Educative, Inc. All rights reserved