Instrucciones de instalación y utilización de un ipython notebook.
Recuerden:
Ctr-S
para evitar sorpresas.FIX_ME
por el código correspondiente.Ctr-Enter
Ejecutar la siguiente celda mediante Ctr-Enter
.
In [ ]:
"""
IPython Notebook v4.0 para python 3.0
Librerías adicionales:
Contenido bajo licencia CC-BY 4.0. Código bajo licencia MIT.
(c) Sebastian Flores, Christopher Cooper, Alberto Rubio, Pablo Bunout.
"""
# Configuración para recargar módulos y librerías dinámicamente
%reload_ext autoreload
%autoreload 2
# Configuración para graficos en línea
%matplotlib inline
# Configuración de estilo
from IPython.core.display import HTML
HTML(open("./style/style.css", "r").read())
Un tipo de dato es la propiedad de un valor que determina: su dominio (valores que puede tomar), las operaciones que se le pueden aplicar y la representación interna que usa el propio computador. En python existen esencialmente:
A continuación veremos las características de cada uno por separado.
In [ ]:
2+2
In [ ]:
1-10
In [ ]:
3*2
In [ ]:
4/5
In [ ]:
4//5
In [ ]:
4%3
In [ ]:
3**2
Observación: En python 3 la división "tradicional" de enteros da un flotante. Esto si bien no es conceptualmente coherente (la operacion de 2 tipos deberia originar el mismo tipo de datos), es en la práctica lo que se busca y es "pragmaticamente" más coherente. Si se busca la división entera, es necesario utilizar //
.
In [ ]:
# INSERTAR CODIGO AQUI #
La operatoria con números flotantes nos permite utilizar las operaciones matemáticas que bien conocemos sin problema. Para ingresar un número de punto flotante se debe ingresar su parte entera seguida por su parte decimal. Sin embargo, si queremos operar como número de punto flotante a un número entero se debe agregar un 0 luego del punto. Veamos que nos entrega el computador en el caso de la división anterior con números de punto flotante:
In [ ]:
4.0/5.0
In [ ]:
4./5.
Los numeros reales (o flotantes) tienen las mismas operaciones que los numeros enteros.
Los números reales no pueden representarse con precisión infinita en el computador, por lo que resulta necesario considerar que siempre existe un error de redondeo.
In [ ]:
# INSERTAR CODIGO AQUI #
num = 1
den = 1
print num/den
In [ ]:
# INSERTAR CODIGO AQUI #
In [ ]:
(3 + 2j) + (- 2j) # Sigue siendo numero complejo aunque se cancele la parte imaginaria
In [ ]:
(3 + 2j) - (12 + 5j)
In [ ]:
(3-2j)*(-2j)
In [ ]:
(12+5j)/(4-3j)
Si definimos un un número complejo $a$ podemos encontrar su parte real e imaginaria mediante la sintaxis "a.real" y "a.imag", mientras que su módulo puede ser determinado a través de la función "abs". Veamos un ejemplo de estas operatorias especiales:
In [ ]:
a=3+4j
print a.real
print a.imag
print abs(a)
Los valores lógicos son aquellos que únicamente pueden tener valores de verdad: verdadero (True
) o falso (False
). Se utilizan principalmente para verificar el estado de verdad de expresiones y evaluar condicionales o estructuras de control.
Un ejemplo sencillo sobre cómo obtener booleanos viene de aplicar las operaciones de orden en números. Por ejemplo la comparación de igualdad "== ", o las desigualdades "<=", "<=", "<", ">".
Los booleanos tienen además las operaciones tradicionales: y (and
), o (or
), negación (not
).
In [ ]:
3==4
In [ ]:
100==100
In [ ]:
3.4 <= 5
In [ ]:
(not True or True ) and (not False)
Cabe destacar que python soporta el uso encadenado de expresiones lógicas de comparación:
In [ ]:
x = 10
1 <= x <= 100
In [ ]:
x = 426
respuesta = True and True or False
print respuesta
Los strings son las cadenas de texto que nos permiten, por ejemplo, imprimir información por pantalla. Al igual que los ejemplos de datos anteriores poseen características y operatorias propias que nos facilitan tremendamente la utilización de éstos. La definición de strings se puede realizarse con comillas simples ('
), comillas dobles ("
), triple comilla simple ('''
) o triple comilla doble ("""
). El uso de strings en python es tan importante que hemos definido una sección especial para explicarlos y practicarlos: string en python.
In [ ]:
string_1 = "Ex Umbra in Solem"
print string_1
In [ ]:
string_2 = 'Ble ble'
print string_2
In [ ]:
string_3 = 'Ble ble'
print string_3
In [ ]:
string_4 = 'Ble ble'
print string_4