Друзья, вы наверняка знаете, что в Python есть очень удобный оператор возведения в степень **. Данный оператор умеет возводить в натуральную, отрицательную и даже дробную степень.



В отличие от других арифметических операторов +, -, *, /, оператор ** является право-ассоциативным, то есть в цепочке из двух таких операторов сначала выполнится правый, а потом левый. Таким образом, выражение 2 ** 1 ** 3 вычисляется так: (2 ** (1 ** 3)) = (2 ** 1) = 2. Не очень ожидаемое поведение для многих программистов, но очень логичное с точки зрения математики. В математике оператор возведения в степень отрабатывает точно так же.



#полезныйматериал