代入をあらわすのに使われる一群のノードが存在します。
ソースコードにおけるそれぞれの代入文は、抽象構文木 AST では
単一のノード Assign になっています。
nodes 属性は各代入の対象にたいするノードのリストです。
これが必要なのは、たとえば a = b = 2
のように
代入が連鎖的に起こるためです。
このリスト中における各 Node は、
次のうちどれかのクラスになります:
AssAttr、 AssList、 AssName、 または AssTuple。
代入対象の各ノードには代入されるオブジェクトの種類が記録されています。
AssName は a = 1
などの単純な変数名、
AssAttr は a.x = 1
などの属性に対する代入、
AssList および AssTuple はそれぞれ、
a, b, c = a_tuple
などのようなリストとタプルの展開をあらわします。
代入対象ノードはまた、そのノードが代入で使われるのか、それとも
del 文で使われるのかをあらわす属性 flags も持っています。
AssName は del x
などのような del 文をあらわすのにも
使われます。
ある式がいくつかの属性への参照をふくんでいるときは、 代入あるいは del 文はただひとつだけの AssAttr ノードをもちます - 最終的な属性への参照としてです。それ以外の属性への参照は AssAttr インスタンスの expr 属性にある Getattr ノードによってあらわされます。
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。