Python es un lenguaje que está altamente modularizado: está dividido en bibliotecas que realizan tareas específicas. Para hacer uso de ellas debemos importarlas. Podemos importar cosas de la biblioteca estándar, de paquetes que hayamos descargado (o se enceuntren en nuestra distribución) o de módulos que nosotros mismos construyamos.
Existen varias formas de importar:
import numpy
Cada vez que queramos acceder a una función de numpy, deberemos escribir:
numpy.sin(5)
numpy.linspace(0,100,50)
In [1]:
import numpy
In [2]:
numpy.sin(numpy.pi)
Out[2]:
Como esto puede resultar tedioso, suele utilizarse un namespace, el recomendado en la documentación oficial y que usaremos en el curso es:
import numpy as np
Ahora podremos llamar a funciones escribiendo:
np.sin(5)
np.linspace(0,100,50)
In [3]:
import numpy as np
In [4]:
np.sin(np.pi)
Out[4]:
También podríamos importar funciones concretas dentro del paquete que queramos usar, por ejemplo:
from numpy import linspace, sin
In [5]:
from numpy import linspace, sin
In [6]:
sin(np.pi)
Out[6]:
Si esto te sigue pareciendo demasido escribir puedes hacer (altamente no recomendado):
from numpy import *
El asterisco, quiere decir TODO. Esto genera varios problemas:
In [7]:
from numpy import *
a = [1,2,3,4,5]
sin(a)
Out[7]:
In [8]:
from math import *
sin(a)
La función seno que incorporá math no es la misma que la de NumPy. Ambas proporcionarán el seno de un número, evidentemente, el mismo resultado para el mismo número, pero una acepta listas y la otra no. Al hacer la segunda importación, la función seno de NumPy se ha sustituido por la de math y la misma sentencia, da un error. Esto puede hacer que te vuelvas un poco loco si tu código es grande o acabes volviendo loco a alguien si usa tu código.
¿Suficiente? Ahora ya sabes por qué tendrás que escribir np.loquesea
siempre.
Hemos aprendido:
numpy
como np