package documentation

Every available node class.

See Also

:doc:`ast documentation <green_tree_snakes:nodes>`

All nodes inherit from ~astroid.nodes.node_classes.NodeNG.

Module as_string This module renders Astroid nodes as string
Module const Undocumented
Module node_classes Module for some node classes. More nodes in scoped_nodes.py
Module node_ng Undocumented
Package scoped_nodes This module contains all classes that are considered a "scoped" node and anything related. A scope node is a node that opens a new local scope in the language definition: Module, ClassDef, FunctionDef (and Lambda, GeneratorExp, DictComp and SetComp to some extent).

From __init__.py:

Class AnnAssign Class representing an ast.AnnAssign node.
Class Arguments Class representing an ast.arguments node.
Class Assert Class representing an ast.Assert node.
Class Assign Class representing an ast.Assign node.
Class AssignAttr Variation of ast.Assign representing assignment to an attribute.
Class AssignName Variation of ast.Assign representing assignment to a name.
Class AsyncFor Class representing an ast.AsyncFor node.
Class AsyncWith Asynchronous with built with the async keyword.
Class Attribute Class representing an ast.Attribute node.
Class AugAssign Class representing an ast.AugAssign node.
Class Await Class representing an ast.Await node.
Class BinOp Class representing an ast.BinOp node.
Class BoolOp Class representing an ast.BoolOp node.
Class Break Class representing an ast.Break node.
Class Call Class representing an ast.Call node.
Class Compare Class representing an ast.Compare node.
Class Comprehension Class representing an ast.comprehension node.
Class Const Class representing any constant including num, str, bool, None, bytes.
Class Continue Class representing an ast.Continue node.
Class Decorators A node representing a list of decorators.
Class DelAttr Variation of ast.Delete representing deletion of an attribute.
Class Delete Class representing an ast.Delete node.
Class DelName Variation of ast.Delete representing deletion of a name.
Class Dict Class representing an ast.Dict node.
Class DictUnpack Represents the unpacking of dicts into dicts using PEP 448.
Class Ellipsis Class representing an ast.Ellipsis node.
Class EmptyNode Holds an arbitrary object in the LocalsDictNodeNG.locals.
Class EvaluatedObject Contains an object that has already been inferred
Class ExceptHandler Class representing an ast.ExceptHandler. node.
Class Expr Class representing an ast.Expr node.
Class ExtSlice Class representing an ast.ExtSlice node.
Class For Class representing an ast.For node.
Class FormattedValue Class representing an ast.FormattedValue node.
Class Global Class representing an ast.Global node.
Class If Class representing an ast.If node.
Class IfExp Class representing an ast.IfExp node. >>> import astroid >>> node = astroid.extract_node('value if condition else other') >>> node <IfExp l.1 at 0x7f23b2e9dbe0>
Class Import Class representing an ast.Import node. >>> import astroid >>> node = astroid.extract_node('import astroid') >>> node <Import l.1 at 0x7f23b2e4e5c0>
Class ImportFrom Class representing an ast.ImportFrom node.
Class Index Class representing an ast.Index node.
Class JoinedStr Represents a list of string expressions to be joined.
Class Keyword Class representing an ast.keyword node.
Class List Class representing an ast.List node.
Class Match Class representing a ast.Match node.
Class MatchAs Class representing a ast.MatchAs node.
Class MatchCase Class representing a ast.match_case node.
Class MatchClass Class representing a ast.MatchClass node.
Class MatchMapping Class representing a ast.MatchMapping node.
Class MatchOr Class representing a ast.MatchOr node.
Class MatchSequence Class representing a ast.MatchSequence node.
Class MatchSingleton Class representing a ast.MatchSingleton node.
Class MatchStar Class representing a ast.MatchStar node.
Class MatchValue Class representing a ast.MatchValue node.
Class Name Class representing an ast.Name node.
Class NamedExpr Represents the assignment from the assignment expression
Class NodeNG A node of the new Abstract Syntax Tree (AST).
Class Nonlocal Class representing an ast.Nonlocal node.
Class Pass Class representing an ast.Pass node.
Class Raise Class representing an ast.Raise node.
Class Return Class representing an ast.Return node.
Class Set Class representing an ast.Set node.
Class Slice Class representing an ast.Slice node.
Class Starred Class representing an ast.Starred node.
Class Statement Statement node adding a few attributes
Class Subscript Class representing an ast.Subscript node.
Class TryExcept Class representing an ast.TryExcept node.
Class TryFinally Class representing an ast.TryFinally node.
Class Tuple Class representing an ast.Tuple node.
Class UnaryOp Class representing an ast.UnaryOp node.
Class Unknown This node represents a node in a constructed AST where introspection is not possible. At the moment, it's only used in the args attribute of FunctionDef nodes where function signature introspection failed.
Class While Class representing an ast.While node.
Class With Class representing an ast.With node.
Class Yield Class representing an ast.Yield node.
Class YieldFrom Class representing an ast.YieldFrom node.
Function are_exclusive return true if the two given statements are mutually exclusive
Function const_factory return an astroid node for a python value
Function unpack_infer recursively generate nodes inferred by the given statement. If the inferred value is a list or a tuple, recurse on the elements
Constant ALL_NODE_CLASSES Undocumented
Constant CONST_CLS Undocumented
def are_exclusive(stmt1, stmt2, exceptions: list[str] | None = None) -> bool: (source)

return true if the two given statements are mutually exclusive

exceptions may be a list of exception names. If specified, discard If branches and check one of the statement is in an exception handler catching one of the given exceptions.

algorithm :
  1. index stmt1's parents
  2. climb among stmt2's parents until we find a common parent
  3. if the common parent is a If or TryExcept statement, look if nodes are in exclusive branches
def const_factory(value): (source)

return an astroid node for a python value

@decorators.raise_if_nothing_inferred
def unpack_infer(stmt, context=None): (source)

recursively generate nodes inferred by the given statement. If the inferred value is a list or a tuple, recurse on the elements

CONST_CLS = (source)

Undocumented

Value
{list: List,
 tuple: Tuple,
 dict: Dict,
 set: Set,
 type(None): Const,
 type(NotImplemented): Const,
 type(...): Const}