class documentation

Class representing an ast.arguments node.

An Arguments node represents that arguments in a function definition.

>>> import astroid
>>> node = astroid.extract_node('def foo(bar): pass')
>>> node
<FunctionDef.foo l.1 at 0x7effe1db8198>
>>> node.args
<Arguments l.1 at 0x7effe1db82e8>
Method __init__ No summary
Method default_value Get the default value for an argument.
Method find_argname Get the index and AssignName node for given name.
Method format_args Get the arguments formatted as string.
Method get_children Get the child nodes below this node.
Method is_argument Check if the given name is defined in the arguments.
Method postinit Do some setup after initialisation.
Class Variable assigned_stmts Returns the assigned statement (non inferred) according to the assignment type. See astroid/protocols.py for actual implementation.
Instance Variable annotations The type annotations of arguments that can be passed positionally.
Instance Variable args The names of the required arguments.
Instance Variable col_offset The column that this node appears on in the source code.
Instance Variable defaults The default values for arguments that can be passed positionally.
Instance Variable end_col_offset The end column this node appears on in the source code. Note: This is after the last symbol.
Instance Variable end_lineno The last line this node appears on in the source code.
Instance Variable kw_defaults The default values for keyword arguments that cannot be passed positionally.
Instance Variable kwarg The name of the variable length keyword arguments.
Instance Variable kwargannotation The type annotation for the variable length keyword arguments.
Instance Variable kwonlyargs The keyword arguments that cannot be passed positionally.
Instance Variable kwonlyargs_annotations The type annotations of arguments that cannot be passed positionally.
Instance Variable lineno The line that this node appears on in the source code.
Instance Variable posonlyargs The arguments that can only be passed positionally.
Instance Variable posonlyargs_annotations The type annotations of arguments that can only be passed positionally.
Instance Variable type_comment_args The type annotation, passed by a type comment, of each argument.
Instance Variable type_comment_kwonlyargs The type annotation, passed by a type comment, of each keyword only argument.
Instance Variable type_comment_posonlyargs The type annotation, passed by a type comment, of each positional argument.
Instance Variable vararg The name of the variable length arguments.
Instance Variable varargannotation The type annotation for the variable length arguments.
Property arguments Get all the arguments for this node, including positional only and positional and keyword
Property fromlineno The first line that this node appears on in the source code.
Method _infer_name Undocumented
Class Variable _astroid_fields Node attributes that contain child nodes.
Class Variable _other_fields Node attributes that do not contain child nodes.

Inherited from AssignTypeMixin:

Method assign_type Undocumented
Method _get_filtered_stmts method used in filter_stmts

Inherited from NodeNG (via AssignTypeMixin):

Method __repr__ Undocumented
Method __str__ Undocumented
Method accept Visit this node using the given visitor.
Method as_string Get the source code that this node represents.
Method block_range Get a range from the given line number to where this node ends.
Method bool_value Determine the boolean value of this node.
Method callable Whether this node defines something that is callable.
Method child_sequence Search for the sequence that contains this child.
Method eq Undocumented
Method frame The first parent frame node.
Method has_base Check if this node inherits from the given type.
Method infer Get a generator of the inferred values.
Method inferred Get a list of the inferred values.
Method instantiate_class Instantiate an instance of the defined class.
Method last_child An optimized version of list(get_children())[-1]
Method locate_child Find the field of this node that contains the given child.
Method next_sibling The next sibling statement node.
Method node_ancestors Yield parent, grandparent, etc until there are no more.
Method nodes_of_class Get the nodes (including this one or below) of the given types.
Method op_left_associative Undocumented
Method op_precedence Undocumented
Method parent_of Check if this node is the parent of the given node.
Method previous_sibling The previous sibling statement.
Method repr_tree Get a string representation of the AST from this node.
Method root Return the root node of the syntax tree.
Method scope The first parent node defining a new scope. These can be Module, FunctionDef, ClassDef, Lambda, or GeneratorExp nodes.
Method set_local Define that the given name is declared in the given statement node.
Method statement The first parent node, including self, marked as statement node.
Class Variable is_function Whether this node indicates a function.
Class Variable is_lambda Undocumented
Class Variable is_statement Whether this node indicates a statement.
Class Variable optional_assign Whether this node optionally assigns a variable.
Instance Variable parent The parent node in the syntax tree.
Property tolineno The last line that this node appears on in the source code.
Method _fixed_source_line Attempt to find the line that this node appears on.
Method _get_assign_nodes Undocumented
Method _get_name_nodes Undocumented
Method _get_return_nodes_skip_functions Undocumented
Method _get_yield_nodes_skip_lambdas Undocumented
Method _infer we don't know how to resolve a statement by default
Method _repr_name Get a name for nice representation.
Class Variable _explicit_inference Undocumented
Class Variable _other_other_fields Attributes that contain AST-dependent fields.
def __init__(self, vararg: str | None = None, kwarg: str | None = None, parent: NodeNG | None = None): (source)
Parameters
vararg:str | NoneThe name of the variable length arguments.
kwarg:str | NoneThe name of the variable length keyword arguments.
parent:NodeNG | NoneThe parent node in the syntax tree.
def default_value(self, argname): (source)

Get the default value for an argument.

Parameters
argname:strThe name of the argument to get the default value for.
Raises
NoDefaultIf there is no default value defined for the given argument.
def find_argname(self, argname, rec=False): (source)

Get the index and AssignName node for given name.

Parameters
argname:strThe name of the argument to search for.
rec:boolWhether or not to include arguments in unpacked tuples in the search.
Returns
tuple(str or None, AssignName or None)The index and node for the argument.
def format_args(self): (source)

Get the arguments formatted as string.

Returns
strThe formatted arguments.
def get_children(self): (source)

Get the child nodes below this node.

def is_argument(self, name): (source)

Check if the given name is defined in the arguments.

Parameters
name:strThe name to check for.
Returns
boolTrue if the given name is defined in the arguments, False otherwise.
def postinit(self, args: list[AssignName], defaults: list[NodeNG], kwonlyargs: list[AssignName], kw_defaults: list[NodeNG | None], annotations: list[NodeNG | None], posonlyargs: list[AssignName] | None = None, kwonlyargs_annotations: list[NodeNG | None] | None = None, posonlyargs_annotations: list[NodeNG | None] | None = None, varargannotation: NodeNG | None = None, kwargannotation: NodeNG | None = None, type_comment_args: list[NodeNG | None] | None = None, type_comment_kwonlyargs: list[NodeNG | None] | None = None, type_comment_posonlyargs: list[NodeNG | None] | None = None): (source)

Do some setup after initialisation.

Parameters
args:list[AssignName]The names of the required arguments.
defaults:list[NodeNG]The default values for arguments that can be passed positionally.
kwonlyargs:list[AssignName]The keyword arguments that cannot be passed positionally.
kw_defaults:list[NodeNG | None]The default values for keyword arguments that cannot be passed positionally.
annotations:list[NodeNG | None]The type annotations of arguments that can be passed positionally.
posonlyargs:list[AssignName] | NoneThe arguments that can only be passed positionally.
kwonlyargs_annotations:list[NodeNG | None] | NoneThe type annotations of arguments that cannot be passed positionally. This should always be passed in Python 3.
posonlyargs_annotations:list[NodeNG | None] | NoneThe type annotations of arguments that can only be passed positionally. This should always be passed in Python 3.
varargannotation:NodeNG | NoneThe type annotation for the variable length arguments.
kwargannotation:NodeNG | NoneThe type annotation for the variable length keyword arguments.
type_comment_args:list[NodeNG | None] | NoneThe type annotation, passed by a type comment, of each positional argument.
type_comment_kwonlyargs:list[NodeNG | None] | NoneUndocumented
type_comment_posonlyargs:list[NodeNG | None] | NoneUndocumented
assigned_stmts: AssignedStmtsCall[Arguments] = (source)

Returns the assigned statement (non inferred) according to the assignment type. See astroid/protocols.py for actual implementation.

annotations: list[NodeNG | None] = (source)

The type annotations of arguments that can be passed positionally.

args: list[AssignName] | None = (source)

The names of the required arguments.

Can be None if the associated function does not have a retrievable signature and the arguments are therefore unknown. This happens with builtin functions implemented in C.

col_offset: None = (source)

The column that this node appears on in the source code.

defaults: list[NodeNG] = (source)

The default values for arguments that can be passed positionally.

end_col_offset: None = (source)

The end column this node appears on in the source code. Note: This is after the last symbol.

end_lineno: None = (source)

The last line this node appears on in the source code.

kw_defaults: list[NodeNG | None] = (source)

The default values for keyword arguments that cannot be passed positionally.

kwarg: str | None = (source)

The name of the variable length keyword arguments.

kwargannotation: NodeNG | None = (source)

The type annotation for the variable length keyword arguments.

kwonlyargs: list[AssignName] = (source)

The keyword arguments that cannot be passed positionally.

kwonlyargs_annotations: list[NodeNG | None] = (source)

The type annotations of arguments that cannot be passed positionally.

lineno: None = (source)

The line that this node appears on in the source code.

posonlyargs: list[AssignName] = (source)

The arguments that can only be passed positionally.

posonlyargs_annotations: list[NodeNG | None] = (source)

The type annotations of arguments that can only be passed positionally.

type_comment_args: list[NodeNG | None] = (source)

The type annotation, passed by a type comment, of each argument.

If an argument does not have a type comment, the value for that argument will be None.

type_comment_kwonlyargs: list[NodeNG | None] = (source)

The type annotation, passed by a type comment, of each keyword only argument.

If an argument does not have a type comment, the value for that argument will be None.

type_comment_posonlyargs: list[NodeNG | None] = (source)

The type annotation, passed by a type comment, of each positional argument.

If an argument does not have a type comment, the value for that argument will be None.

vararg: str | None = (source)

The name of the variable length arguments.

varargannotation: NodeNG | None = (source)

The type annotation for the variable length arguments.

@decorators.cachedproperty
arguments = (source)

Get all the arguments for this node, including positional only and positional and keyword

@decorators.cachedproperty
fromlineno = (source)

The first line that this node appears on in the source code.

def _infer_name(self, frame, name): (source)

Undocumented

_astroid_fields: tuple[str, ...] = (source)

Node attributes that contain child nodes.

This is redefined in most concrete classes.

_other_fields: tuple[str, ...] = (source)

Node attributes that do not contain child nodes.