Es posible que hayas oído que puedes utilizar el modo interactivo de Python como calculadora. Hay muchas funciones que te permiten convertir Python en una calculadora científica o incluso gráfica.
8 Calcular exponentes, raíces y logaritmos
Los exponentes, raíces y logaritmos son operaciones matemáticas comunes y son algunas de las funciones que puedes usar en Python para.
Para elevar una base a la enésima potencia, simplemente use el operador **. Por ejemplo, para elevar al cuadrado el número 2:
2**2use el operador ^ (intercalación) para los exponentes, por lo que podría hacerle tropezar si está acostumbrado a ellos. Si recibe un mensaje de error, asegúrese de haber utilizado el operador correcto.
Las raíces cuadradas también son simples. Puedes usar la biblioteca matemática en Python. Hay una función llamada sqrt que toma la raíz cuadrada de un número:
import math
math.sqrt(81)
Esto devolverá el número 9. Para los números que no son cuadrados perfectos, devolverá una aproximación decimal como lo haría una calculadora científica portátil. La función cbrt funciona de la misma manera, pero con raíces cúbicas.
Para sacar una raíz mayor que 3, elévela a la potencia 1/n usando el operador exponente. Por ejemplo, para sacar la raíz octava de 256:
256**(1/8)Los paréntesis están ahí para indicarle a Python que estamos elevando el número a un exponente fraccionario. De lo contrario, elevará 256 a la primera potencia, dando 256, luego lo dividirá entre 8, que no es lo que queremos. Con el paréntesis devolverá 8, porque 2 elevado a la octava potencia es 256.
Esto nos lleva a los logaritmos, que son exponentes inversos. La función log toma el logaritmo de un número usando una base determinada. Por defecto, utiliza el logaritmo natural con la constante e (2,17828...) como base:
math.log(42)Para utilizar el logaritmo común, proporcione la base como segundo argumento:
math.log(42,10)Los desarrolladores de la biblioteca matemática han creado un atajo para el logaritmo común, ya que, perdonando el juego de palabras, es común. Utilice la función log10:
math.log10(42)Los logaritmos en base 2 también son comunes en informática y existe una función similar con 2 como base. Para saber cuántos bits se necesitan para un número, use la función log2:
math.log2(512)Puedes usar una base diferente tomando el logaritmo natural o común de un número y dividiéndolo por el logaritmo de la base que deseas usar. Por ejemplo, para llevar el logaritmo de 81 a base 3:
math.log(81) / math.log(3)Esto devolverá 4, porque 3 elevado a la cuarta potencia es 81. Puedes comprobarlo tomando el antilogaritmo de base 3:
3**47 Usar constantes
Hablando de constantes matemáticas, también puedes usar las constantes de e y pi fácilmente con la biblioteca matemática.
Quizás recuerdes que el área de un círculo es pi multiplicado por el cuadrado del radio. A continuación se explica cómo calcular el área de un círculo con un radio de 6 unidades:
import math
math.pi * 6**26 Utilice funciones trigonométricas
Si usa funciones trigonométricas en una calculadora científica, la biblioteca matemática le permite usarlas en Python. Están disponibles seno, coseno y tangente, así como las correspondientes funciones trigonométricas inversas.
Estas funciones operan en radianes, pero puedes convertirlas a radianes con la función grados. Para convertir 60 grados a radianes:
import math
math.radians(60)Para tomar el seno de este ángulo, usa la función sin.
angle = math.radians(60)
math.sin(angle)
Podemos recuperar nuestro ángulo original usando asen, el seno inverso o arcoseno:
math.asin(1.0471975511965976)También podemos usar el operador de guión bajo "_" en modo interactivo para obtener el resultado anterior y ahorrarnos escribir.
math.asin(_)También hay una función para convertir radianes a grados:
math.degrees(_)Esto nos devolverá a nuestra medida original. Las funciones cos y acos y tan y atan funcionan de la misma manera.
5 Resolver ecuaciones con SymPy y NumPy
Python puede realizar cálculos numéricos, pero también puede resolver ecuaciones algebraicas con las bibliotecas adecuadas. No necesita costosos sistemas de álgebra informáticos propietarios como Mathematica o Maple. Puede.
usemosSymPypara resolver una ecuación simple, 3x + 5 = 7. Esto sería fácil de hacer a mano, pero mostrará lo que SymPy puede hacer.
Primero, importe SymPy:
from sympy import *Antes de usar x, tendremos que definirla como variable simbólica:
x = symbols('x')Usaremos la función Eq de SymPy, ya que SymPy espera ecuaciones iguales a 0.
eqn = Eq(3*x + 5,7)
Ahora usaremos la función de resolución para resolver x:
solve(eqn,x)La respuesta debería ser 2/3.
La aplicación de línea de comandos isympy importará SymPy a un entorno interactivo, definirá algunas variables comunes, incluida x, y configurará una impresión bonita para que los resultados se parezcan más a los de un libro de texto.
Hagamos algo más difícil. Una ecuación cuadrática es más difícil de resolver a mano. Afortunadamente, con SymPy no tendrás que recordar la fórmula cuadrática ni cómo completar el cuadrado. Resolveremos la ecuación cuadrática x^2 + 4x +2 = 0. Podemos ir directamente a resolverla para x:
solve(x**2 + 4*x + 2,x)Las respuestas serán 2 menos la raíz cuadrada de 2 y 2 más la raíz cuadrada de 2. Recuerda definir explícitamente la multiplicación, como 4*x para 4x.
También puedes resolver un sistema de ecuaciones lineales fácilmente conNumPy. Resolveremos la primera ecuación de ejemplo dela página de Wikipedia sobre sistemas de ecuaciones lineales:
3x + 2y - z = 1
2x -2y + 4z = -2
-x + 1/2y - z = 0
Usaremos una matriz y un vector para resolver esto. No necesitamos preocuparnos por las variables. Sólo queremos los coeficientes. Usaremos una matriz 2-D, o una matriz de matrices, para representar una matriz de coeficientes:
import numpy as np
A = np.array([[3,2,-1],[2,-2,4],[-1,1/2,-1]])Y usaremos otra matriz para el vector columna de constantes en el lado derecho del sistema:
b = np.array([1,-2,0])Y luego usaremos la función linalg.solve de NumPy para resolverlo si el sistema tiene alguna solución (no todos los sistemas de ecuaciones lineales la tienen)
np.linalg.solve(A,b)
Obtendrá una lista de soluciones para el sistema, en este caso 1, -2 y -2. Estos corresponden a las variables de x,y y z.

Muchas calculadoras científicas y. Puedes hacer algunas estadísticas simples con elBiblioteca de estadísticas.
Creemos una matriz de algunos números para que sirva como nuestro conjunto de datos.
data = [25,42,35]Para calcular la media de algunos números, colóquelos en una matriz y use la función media:
statistics.mean(data)Para la mediana:
statistics.median(data)Y la moda, el valor que ocurre con más frecuencia:
statistics.mode(data)En este caso, si cada número aparece la misma cantidad de veces, Python imprimirá el primero.
3 ¿Necesita sólo una función? ¡Solo importalo!
Si solo necesita una o algunas funciones de una biblioteca para uso interactivo, puede importarlas.
Si solo necesita la función seno de la biblioteca matemática, puede importarla así:
from math import sin
Ahora puedes usarlo sin tener que llamar primero a la biblioteca:
sin(42)2 Calcular factoriales, permutaciones y combinaciones
Las operaciones combinatorias básicas como factorial, permutaciones y combinaciones también están disponibles en Python. Una vez más, es la biblioteca de matemáticas al rescate:
from math import factoral, comb, permUn factorial es un número multiplicado por el siguiente número más bajo multiplicado por el siguiente número más bajo hasta 1. Se abrevia con el signo de exclamación. Por ejemplo, ¡49 factorial es 49!
¡Para calcular 49! use la función factorial de la biblioteca matemática que acabamos de importar:
factorial(49)El resultado es un número muy grande. Para calcular cuántas combinaciones puedes obtener sacando 5 cartas de una baraja estándar de 52 cartas:
comb(52,5)Para calcular las permutaciones, es decir, robar cartas donde el orden es importante, use la función permanente:
perm(52,5)1 Trazar una función con SymPy
Sympy no sólo puede resolver ecuaciones, sino que también puede trazarlas como lo haría una calculadora gráfica.
Puedes trazar funciones en la forma y = mx+ b, donde m es la pendiente y b es la intersección. Solo necesitamos la parte mx + b. Por ejemplo, para trazar y = 3x + 5
from sympy import symbols, plot
x = symbols('x')
plot(3*x + 5)
Aparecerá una ventana con el gráfico o aparecerá en un. Con todas estas funciones, puedes guardar esa vieja calculadora científica o gráfica en el cajón y usar algo que sea mucho más económico y flexible.
