Python Glossary English

все Python 3astпонятие

ast.Div

операторы

Класс оператора истинного деления /: экземпляр Div() стоит в op узла BinOp или AugAssign (a /= b). Целочисленное деление // — отдельный класс FloorDiv.

Синтаксис

ast.Div()  # /

Имя класса — Div, хотя функция модуля operator называется truediv: в Python 2 / делил нацело для целых, а имя узла осталось прежним. Поиск делений, способных дать ZeroDivisionError, должен смотреть и на Div, и на FloorDiv, и на Mod — все три падают на нуле. Узел без полей.

Примеры

import ast
for src in ['a / b', 'a // b', 'a /= b']:
    tree = ast.parse(src).body[0]
    node = tree.value if isinstance(tree, ast.Expr) else tree
    print(type(node.op).__name__)
# → Div / FloorDiv / Div

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности