In [4]:
#Los comentarios son líneas, o partes de una línea, que no se leen, y ayudan a entender el código.
#Empiezan con # todas
#Acá imprimos en pantalla
print("Hola mundo")
print(5 + 5)
In [3]:
text = input("Ingresá algo: ")
print("Ingresaste " + text)
In [8]:
integer = 5 #Números "enteros"
print(type(integer))
flotante = 5.0 #Números "reales"
print(type(flotante))
division = integer / flotante #Divisón no entera por defecto en Python v3.x
print(division)
division = int(division) #Transformación a entero
print(division,'\t', type(division))
# En la próxima entrega vamos a ver otras funcionalidades con Numpy
# Los tipos booleanos o de verdad son muy útiles para escribir relaciones lógicas
boolean = 5==4
# <, >, >=, <=, != son comparadores booleanos
# and, or, not son conjuntores para hacer frases lógicas más complicadas.
# Para lo demás, hay que usar las leyes de DeMorgan.
print(boolean, '\t', type(boolean))
# Las listas pueden mantener varias variables con diferentes tipos y valores. Son como una bolsa ordenada de datos.
lista1 = [1, 2, 3]
print(lista1)
print(lista1[1])
print(lista1[-1])
lista2 = [4, 5, 6]
lista3 = ['a', 'b', boolean, integer, 'Todo Python ahi adentro']
#Agrego al final a una lista
lista1.append(3)
print(lista1)
#Agrego una lista a otra lista
lista1.append(lista2)
print(lista1)
#"Sumo" las listas
lista1.extend(lista2)
print(lista1)
print(lista3.pop()) #Devuelve el último elemento
print(lista3) #Y no está más en la lista
# Probar los métodos insert, remove, pop, sort de las listas
In [14]:
boolean = True #Cambiar para ver resultados
# Control de flujo de código con condicionales (Ifs).
if boolean == True:
boolean = True
# Se puede volver tan complejo como uno quiera
if 5>4:
if 3 >2:
if 2>1:
if 1>0:
print('Cadena de ifs')
# También podemos agregarle un "si no"
if boolean == True:
boolean = False
else:
boolean = True
# Y también, un "si no, si"
if boolean == True:
print("True")
elif 1 < 5: #Cambiar para ver resultados
print(False)
else:
print("Finalmente")
In [28]:
nueva_lista = []
# Bucles con tamaño fijo
for i in range(20):
nueva_lista.append(i)
print(nueva_lista)
if len(nueva_lista) <= 20:
for i in range(20):
nueva_lista.append(i)
print(nueva_lista)
#Bucles de tamaño no necesariamente fijo
#OJO que pueden ser infinitos y nunca terminar. Para eso Ctrl+C y detiene la operación
i = 0
while i < 20:
print(i - 1)
i += 1
In [21]:
def suma(a, b):
c = a + b
return c #Devuelvo el resultado
print(suma(2, 3))
def factorial(n):
j = 1
for i in range(1, n + 1): #EL range va de 0 a n, no inclusive
j *= i
return j
print(factorial(5))
In [27]:
#Funciones anónimas o lambdas, una forma rápida de hacer una función simple
par = lambda n: n%2 == 0 #Me devuelve True si es par
print(type(par), '\t', par(5)) #Las funciones tienen tipo!!!
In [30]:
#Importo los paquetes para ser usados después
import numpy as np
from matplotlib import pyplot as plt
%matplotlib inline
In [32]:
import numpy as np
from matplotlib import pyplot as plt
x = np.linspace(-5, 5) #Por defecto son 50 números equispaciados entre -5 y 5
#Ahora creamos la variable dependiente, con algun de ruido para "crear datos"
y = x**2 -3
ruido = np.random.rand(len(y))*0.8
y = y+ruido
#Con esto graficamos una variable contra otra
plt.plot(x, y, 'bo')
plt.xlabel('Variable independiente')
plt.ylabel('x^2')
plt.grid()
plt.show() #Si corrés en Ipython con %matplotlib inline no es necesario
In [ ]: