operator - Python and Powers Math
sqrt python (3)
He estado aprendiendo Python pero estoy un poco confundido. Los instructores en línea me dicen que use el operador ** en lugar de ^ cuando intento aumentar un número determinado. Ejemplo:
print 8^3
Da una salida de 11. Pero lo que busco (me dicen) es más parecido a: imprimir 8 ** 3 que da la respuesta correcta de 512. ¿Pero por qué?
¿Puede alguien explicarme esto? ¿Por qué es que 8 ^ 3 no es igual a 512 ya que es la respuesta correcta? ¿En qué caso sería 11 (el resultado de 8 ^ 3)?
Intenté buscar SO, pero solo veo información sobre cómo obtener un módulo al dividir.
Es solo que ^
no significa "exponente" en Python. Significa "XOR bit a bit". Consulte la documentación .
Los símbolos representan diferentes operadores.
http://wiki.python.org/moin/BitwiseOperators .
Cada bit de la salida es el mismo que el bit correspondiente en x si ese bit en y es 0, y es el complemento del bit en x si ese bit en y es 1.
**
Representa al operador de energía. Así es como está estructurado el lenguaje.
Operator ^
es un operador bitwise , que hace "bitwise exclusive o" .
Más: http://wiki.python.org/moin/BitwiseOperators
El operador de energía es **
, como 8**3
que es igual a 512
.
Ref: http://docs.python.org/reference/expressions.html#the-power-operator