Согласно docs , **
имеет более высокий приоритет, чем -
, поэтому ваш код эквивалентен -(2 ** 2)
. Чтобы получить желаемый результат, вы можете поместить -2
в круглые скобки
>>> (-2) ** 2
4
или использовать встроенную функцию pow
>>> pow(-2, 2)
4
или math.pow
(возвращающее значение float
)
>>> import math
>>> math.pow(-2, 2)
4.0