все Python 3устарело в 3.9astпонятие
ast.AugLoad
переменные
Deprecated-класс контекста ctx, оставшийся от Python 2: парсер Python 3 его не создаёт, а компилятор не принимает. Устарел в 3.9.
Синтаксис
ast.AugLoad() # устарел, не используется
Класс по-прежнему импортируется, и при обращении к нему предупреждения нет, поэтому старый код с проверкой isinstance(ctx, ast.AugLoad) молча никогда не срабатывает. В x += 1 цель получает обычный Store, а чтение старого значения отдельным узлом не представлено — сравнивайте контекст с ast.Load и ast.Store. Класс объявлен устаревшим и будет удалён в одной из будущих версий.
Примеры
import ast
node = ast.parse('x += 1').body[0]
print(type(node.target.ctx).__name__) # → Store
print(issubclass(ast.AugLoad, ast.expr_context)) # → True
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности