Python Glossary Русский

all Python 3astterm

ast.Mult

operators

The marker for the binary operator * in an ast tree: it sits in BinOp.op and AugAssign.op and has no fields.

Syntax

ast.Mult()

An asterisk is not always Mult: '*args' in a call is Starred, '*rest' in unpacking is Starred too, '**' is Pow, and a bare '*' in a def signature only separates keyword-only parameters and leaves no node. Mult appears only as the binary 'a * b' or in 'a *= b' (AugAssign).

Examples

import ast
print(type(ast.parse('a * b', mode='eval').body.op).__name__)  # → Mult
call = ast.parse('f(*args)', mode='eval').body
print(type(call.args[0]).__name__)  # → Starred
print(type(ast.parse('a ** b', mode='eval').body.op).__name__)  # → Pow

See also

Open in the full glossarydocs.python.orgReport an inaccuracy