Python Library Reference
Previous: Up: 19.3 Python Abstract Syntax Next:

19.3.2 Assignment nodes

There is a collection of nodes used to represent assignments. Each assignment statement in the source code becomes a single Assign node in the AST. The nodes attribute is a list that contains a node for each assignment target. This is necessary because assignment can be chained, e.g. a = b = 2. Each Node in the list will be one of the following classes: AssAttr, AssList, AssName, or AssTuple.

Each target assignment node will describe the kind of object being assigned to: AssName for a simple name, e.g. a = 1. AssAttr for an attribute assigned, e.g. a.x = 1. AssList and AssTuple for list and tuple expansion respectively, e.g. a, b, c = a_tuple.

The target assignment nodes also have a flags attribute that indicates whether the node is being used for assignment or in a delete statement. The AssName is also used to represent a delete statement, e.g. del x.

When an expression contains several attribute references, an assignment or delete statement will contain only one AssAttr node - for the final attribute reference. The other attribute references will be represented as Getattr nodes in the expr attribute of the AssAttr instance.


Python Library Reference
Previous: Up: 19.3 Python Abstract Syntax Next:

Release 2.4.4, documentation updated on 18 October 2006.
See About this document... for information on suggesting changes.

AltStyle によって変換されたページ (->オリジナル) /