Compare commits
2 Commits
5f9b6d8e46
...
b942e84458
Author | SHA1 | Date | |
---|---|---|---|
b942e84458 | |||
e81027cc44 |
180
dia_15/cuaderno_matplotlib.py
Normal file
180
dia_15/cuaderno_matplotlib.py
Normal file
@ -0,0 +1,180 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
"""Python TOTAL - Matplotlib.ipynb
|
||||||
|
|
||||||
|
Automatically generated by Colaboratory.
|
||||||
|
|
||||||
|
Original file is located at
|
||||||
|
https://colab.research.google.com/drive/1CqTZeTV1_gEcvQEVFOVdUh1Ibcf1HcS0
|
||||||
|
|
||||||
|
# Práctica de la librería Matplotlib
|
||||||
|
|
||||||
|
En este notebook, se desarrollarán una serie de tareas utilizando la librería Matplotlib, empleada para la visualización de datos mediante gráficos.
|
||||||
|
|
||||||
|
Se proponen y documentan posibles formas de resolver los ejercicios, pero pueden existir varias formas de lograr los mismos resultados.
|
||||||
|
|
||||||
|
Siempre es una buena idea verificar la [Documentación Oficial de Matplotlib](https://matplotlib.org/stable/index.html), donde es posible encontrar todo tipo de información referida a esta librería. Y si te quedas trabado, busca en Google "como hacer [algo] con Matplotlib". Hay enormes probabilidades de que esa pregunta ya haya sido respondida!
|
||||||
|
|
||||||
|
Por ejemplo, si quieres crear un gráfico con `plt.subplots()`, puedes buscar directamente en Google [`plt.subplots()`](https://www.google.com/search?q=plt.subplots())
|
||||||
|
"""
|
||||||
|
|
||||||
|
# Commented out IPython magic to ensure Python compatibility.
|
||||||
|
# Importamos el módulo de Matplotlib como plt
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
# La siguiente linea nos permite ver los gráficos directamente al ejecutarlos en el notebook
|
||||||
|
# %matplotlib inline
|
||||||
|
|
||||||
|
# Creamos un gráfico utilizando plt.plot()
|
||||||
|
plt.plot()
|
||||||
|
|
||||||
|
# Graficamos una lista de números
|
||||||
|
a = [1,5,3,8,7,15]
|
||||||
|
plt.plot(a)
|
||||||
|
|
||||||
|
# Creamos dos listas, x e y. Llenamos a la lista x de valores del 1 al 100.
|
||||||
|
x = list(range(101))
|
||||||
|
|
||||||
|
# Los valores de y van a equivaler al cuadrado del respectivo valor en x con el mísmo índice
|
||||||
|
y = []
|
||||||
|
for numero in x:
|
||||||
|
y.append(numero**2)
|
||||||
|
|
||||||
|
# Graficamos ambas listas creadas
|
||||||
|
plt.plot(x,y)
|
||||||
|
|
||||||
|
"""Hay otra manera de crear gráficos en Matplotlib, utilizando el método orientado a objetos (OO)."""
|
||||||
|
|
||||||
|
# Creamos el gráfico utilizando plt.subplots()
|
||||||
|
# fig se refiere a la figurar general
|
||||||
|
# ax se refiere al eje
|
||||||
|
fig, ax = plt.subplots()
|
||||||
|
|
||||||
|
ax.plot(x, y)
|
||||||
|
|
||||||
|
"""Veamos cómo sería un flujo de trabajo en Matplotlib"""
|
||||||
|
|
||||||
|
# Commented out IPython magic to ensure Python compatibility.
|
||||||
|
# Importar y preparar la librería
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
# %matplotlib inline
|
||||||
|
|
||||||
|
# Preparar los datos
|
||||||
|
x = list(range(101))
|
||||||
|
y = []
|
||||||
|
for numero in x:
|
||||||
|
y.append(numero**2)
|
||||||
|
|
||||||
|
# Preparamos el área del gráfico (fig) y el gráfico en sí (ax) utilizando plt.subplots()
|
||||||
|
fig, ax = plt.subplots()
|
||||||
|
|
||||||
|
# Añadimos los datos al gráfico
|
||||||
|
ax.plot(x, y)
|
||||||
|
|
||||||
|
# Personalizamos el gráfico añadiendo título al gráfico y a los ejes x e y
|
||||||
|
ax.set(title="Gráfico de casos de COVID-10 en Latam", xlabel="Días", ylabel="Casos confirmados")
|
||||||
|
|
||||||
|
# Guardamos nuestro gráfico empleando fig.savefig()
|
||||||
|
fig.savefig("/ejemplo-grafico-covif.png")
|
||||||
|
|
||||||
|
"""Veamos ahora un gráfico de dispersión:"""
|
||||||
|
|
||||||
|
#creamos un nuveo set de datos utilizando la librería Numpy
|
||||||
|
import numpy as np
|
||||||
|
|
||||||
|
x_1 = np.linspace(0, 100, 20)
|
||||||
|
y_1 = x_1**2
|
||||||
|
|
||||||
|
# Creamos el gráfico de dispersión de x vs y
|
||||||
|
fig, ax = plt.subplots()
|
||||||
|
ax.scatter(x_1, y_1)
|
||||||
|
|
||||||
|
ax.set(title="Otro gráfico más", xlabel="Días", ylabel="Aumento exponencial")
|
||||||
|
|
||||||
|
# Visualizamos ahora la función seno, utilizando np.sin(X)
|
||||||
|
fig, ax = plt.subplots()
|
||||||
|
x_2 = np.linspace(-10, 10, 100)
|
||||||
|
y_2 = np.sin(x_2)
|
||||||
|
|
||||||
|
ax.scatter(x_2, y_2)
|
||||||
|
|
||||||
|
"""Veamos ahora otro tipo de gráfico. Por ejemplo, un gráfico de barras, que por lo general asocia resultados numéricos a variables categóricas (categorías)"""
|
||||||
|
|
||||||
|
# Creemos un diccionario con tres platos y su respectivo precio
|
||||||
|
# Las claves del diccionario serán los nombres de las comidas, y los valores asociados, su precio
|
||||||
|
comidas = {"lasagna":350, "sopa":150, "roast beef":650}
|
||||||
|
|
||||||
|
# Crearemos un gráfico de barras donde el eje x está formado por las claves del diccionario,
|
||||||
|
# y el eje y contiene los valores.
|
||||||
|
fig, ax = plt.subplots()
|
||||||
|
ax.bar(comidas.keys(), comidas.values())
|
||||||
|
|
||||||
|
|
||||||
|
# Añadimos los títulos correspondientes
|
||||||
|
ax.set(title="Precios de comidas", xlabel="Comidas", ylabel="Precios")
|
||||||
|
|
||||||
|
# Probemos a continuación con un gráfico de barras horizontales
|
||||||
|
fig, ax = plt.subplots()
|
||||||
|
ax.barh(list(comidas.keys()), list(comidas.values()))
|
||||||
|
|
||||||
|
ax.set(title="Precios de comidas", xlabel="Precios", ylabel="Comidas")
|
||||||
|
|
||||||
|
"""Un gráfico semejante es un histograma. Podemos generar números aleatorios que siguen una distribución normal (que se acumulan en torno a un valor central), con la función randn:"""
|
||||||
|
|
||||||
|
# Creamos una distribución de 1000 valores aleatorios distribuidos normalmente
|
||||||
|
x = np.random.random(1000)
|
||||||
|
|
||||||
|
# Creamos el histograma
|
||||||
|
fig, ax = plt.subplots()
|
||||||
|
ax.hist(x)
|
||||||
|
|
||||||
|
"""Veamos ahora un caso más complejo, trabajando con subplots, o figuras que cotienen varios gráficos:"""
|
||||||
|
|
||||||
|
# Creamos una figura con 4 subgráficos (2 por fila)
|
||||||
|
fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(nrows=2, ncols=2, figsize=(12,8))
|
||||||
|
|
||||||
|
"""Añadimos datos a cada uno de los gráficos (axes)"""
|
||||||
|
|
||||||
|
# Creamos la misma disposición de gráficos, con un tamaño de figura de 10x5
|
||||||
|
fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(nrows=2, ncols=2, figsize=(10,5))
|
||||||
|
|
||||||
|
# Para nuestro primer gráfico, tomamos el conjunto x_1, y_1, y generamos un gráfico de líneas
|
||||||
|
ax1.plot(x_1, y_1)
|
||||||
|
|
||||||
|
|
||||||
|
# Para nuestro segundo gráfico, tomamos el conjunto x_2, y_2, y generamos un gráfico de dispersión
|
||||||
|
ax2.scatter(x_2,y_2)
|
||||||
|
|
||||||
|
# Creamos un gráfico con los precios de tres comidas en la esquina inferior izquierda
|
||||||
|
ax3.bar(comidas.keys(), comidas.values())
|
||||||
|
|
||||||
|
# El gráfico de la esquina inferior derecha será un histograma de valores aleatorios con distribución normal
|
||||||
|
ax4.hist(np.random.randn(1000))
|
||||||
|
|
||||||
|
"""Matplotlib tiene un conjunto de varios estilos disponibles, podemos verificarlos de la siguiente manera:"""
|
||||||
|
|
||||||
|
# Verificamos estilos disponibles
|
||||||
|
plt.style.available
|
||||||
|
|
||||||
|
# Cambiamos el estilo predeterminado por "seaborn-whitegrid"
|
||||||
|
plt.style.use('seaborn-v0_8-whitegrid')
|
||||||
|
|
||||||
|
"""Habiendo cambiado el estilo (el cambio más evidente que veremos será una grilla en el fondo de cada gráfico), cambiaremos también los colores de las líneas, puntos y barras en cada uno de los gráficos por códigos hex a nuestra preferencia:
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
# Copiamos los valores de los gráficos anteriores
|
||||||
|
# Creamos la misma disposición de gráficos, con un tamaño de figura de 10x5
|
||||||
|
fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(nrows=2, ncols=2, figsize=(10,5))
|
||||||
|
|
||||||
|
# Para nuestro primer gráfico, tomamos el conjunto x_1, y_1, y generamos un gráfico de líneas
|
||||||
|
ax1.plot(x_1, y_1, color="#fcba03")
|
||||||
|
|
||||||
|
|
||||||
|
# Para nuestro segundo gráfico, tomamos el conjunto x_2, y_2, y generamos un gráfico de dispersión
|
||||||
|
ax2.scatter(x_2,y_2, color="#fcba02")
|
||||||
|
|
||||||
|
# Creamos un gráfico con los precios de tres comidas en la esquina inferior izquierda
|
||||||
|
ax3.bar(comidas.keys(), comidas.values(), color="#03c6fc")
|
||||||
|
|
||||||
|
# El gráfico de la esquina inferior derecha será un histograma de valores aleatorios con distribución normal
|
||||||
|
ax4.hist(np.random.randn(1000), color="#fc036b")
|
BIN
doc_curso/01_creador_de_nombres/001Print.pdf
Normal file
BIN
doc_curso/01_creador_de_nombres/001Print.pdf
Normal file
Binary file not shown.
BIN
doc_curso/01_creador_de_nombres/002Strings.pdf
Normal file
BIN
doc_curso/01_creador_de_nombres/002Strings.pdf
Normal file
Binary file not shown.
BIN
doc_curso/01_creador_de_nombres/003Input.pdf
Normal file
BIN
doc_curso/01_creador_de_nombres/003Input.pdf
Normal file
Binary file not shown.
BIN
doc_curso/01_creador_de_nombres/004Proyecto+del+Día+1.pdf
Normal file
BIN
doc_curso/01_creador_de_nombres/004Proyecto+del+Día+1.pdf
Normal file
Binary file not shown.
6
doc_curso/01_creador_de_nombres/005Cerveceria.py
Normal file
6
doc_curso/01_creador_de_nombres/005Cerveceria.py
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
print("El nombre de tu cerveza\nes '" + input("Que ciudad te gustaria visitar?: ") + " " + input("Cual es tu color favorito?: ") + "'\nFelicitaciones!")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
3386
doc_curso/02_calculador_de_comisiones/006Tipos+de+Datos.pdf
Normal file
3386
doc_curso/02_calculador_de_comisiones/006Tipos+de+Datos.pdf
Normal file
File diff suppressed because it is too large
Load Diff
BIN
doc_curso/02_calculador_de_comisiones/007Variables.pdf
Normal file
BIN
doc_curso/02_calculador_de_comisiones/007Variables.pdf
Normal file
Binary file not shown.
Binary file not shown.
BIN
doc_curso/02_calculador_de_comisiones/009Integers+y+Floats.pdf
Normal file
BIN
doc_curso/02_calculador_de_comisiones/009Integers+y+Floats.pdf
Normal file
Binary file not shown.
Binary file not shown.
BIN
doc_curso/02_calculador_de_comisiones/011Formatear+Cadenas.pdf
Normal file
BIN
doc_curso/02_calculador_de_comisiones/011Formatear+Cadenas.pdf
Normal file
Binary file not shown.
Binary file not shown.
BIN
doc_curso/02_calculador_de_comisiones/013Redondeo.pdf
Normal file
BIN
doc_curso/02_calculador_de_comisiones/013Redondeo.pdf
Normal file
Binary file not shown.
BIN
doc_curso/02_calculador_de_comisiones/014Proyecto+del+Día+2.pdf
Normal file
BIN
doc_curso/02_calculador_de_comisiones/014Proyecto+del+Día+2.pdf
Normal file
Binary file not shown.
6
doc_curso/02_calculador_de_comisiones/015Comisiones.py
Normal file
6
doc_curso/02_calculador_de_comisiones/015Comisiones.py
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
nombre = input("Por favor, dime tu nombre: ")
|
||||||
|
ventas = int(input("Diga sus ventas totales del mes: "))
|
||||||
|
|
||||||
|
comision = round(ventas * 13 / 100,2)
|
||||||
|
|
||||||
|
print(f"Hola {nombre}, tus comisiones de este mes son de ${comision}")
|
BIN
doc_curso/03_analizador_de_texto/016index(+).pdf
Normal file
BIN
doc_curso/03_analizador_de_texto/016index(+).pdf
Normal file
Binary file not shown.
BIN
doc_curso/03_analizador_de_texto/017Substrings.pdf
Normal file
BIN
doc_curso/03_analizador_de_texto/017Substrings.pdf
Normal file
Binary file not shown.
11115
doc_curso/03_analizador_de_texto/018Métodos+de+Strings.pdf
Normal file
11115
doc_curso/03_analizador_de_texto/018Métodos+de+Strings.pdf
Normal file
File diff suppressed because it is too large
Load Diff
BIN
doc_curso/03_analizador_de_texto/019Propiedades+de+Strings.pdf
Normal file
BIN
doc_curso/03_analizador_de_texto/019Propiedades+de+Strings.pdf
Normal file
Binary file not shown.
BIN
doc_curso/03_analizador_de_texto/020Listas.pdf
Normal file
BIN
doc_curso/03_analizador_de_texto/020Listas.pdf
Normal file
Binary file not shown.
BIN
doc_curso/03_analizador_de_texto/021Diccionarios.pdf
Normal file
BIN
doc_curso/03_analizador_de_texto/021Diccionarios.pdf
Normal file
Binary file not shown.
BIN
doc_curso/03_analizador_de_texto/022Tuples.pdf
Normal file
BIN
doc_curso/03_analizador_de_texto/022Tuples.pdf
Normal file
Binary file not shown.
10576
doc_curso/03_analizador_de_texto/023Sets+-+Métodos.pdf
Normal file
10576
doc_curso/03_analizador_de_texto/023Sets+-+Métodos.pdf
Normal file
File diff suppressed because it is too large
Load Diff
BIN
doc_curso/03_analizador_de_texto/024Booleanos.pdf
Normal file
BIN
doc_curso/03_analizador_de_texto/024Booleanos.pdf
Normal file
Binary file not shown.
BIN
doc_curso/03_analizador_de_texto/025Proyecto+del+Día+3.pdf
Normal file
BIN
doc_curso/03_analizador_de_texto/025Proyecto+del+Día+3.pdf
Normal file
Binary file not shown.
41
doc_curso/03_analizador_de_texto/026Analizador_de_texto.py
Normal file
41
doc_curso/03_analizador_de_texto/026Analizador_de_texto.py
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
texto = input("Ingresa un texto a elección: ")
|
||||||
|
letras = []
|
||||||
|
|
||||||
|
texto = texto.lower()
|
||||||
|
|
||||||
|
letras.append(input("Ingresa la primera letra: ".lower()))
|
||||||
|
letras.append(input("Ingresa la segunda letra: ".lower()))
|
||||||
|
letras.append(input("Ingresa la tercera letra: ".lower()))
|
||||||
|
|
||||||
|
print("\n")
|
||||||
|
print("CANTIDAD DE LETRAS")
|
||||||
|
cantidad_letras1 = texto.count(letras[0])
|
||||||
|
cantidad_letras2 = texto.count(letras[1])
|
||||||
|
cantidad_letras3 = texto.count(letras[2])
|
||||||
|
|
||||||
|
print(f"Hemos encontrado la letra '{letras[0]}' repetida {cantidad_letras1} veces")
|
||||||
|
print(f"Hemos encontrado la letra '{letras[1]}' repetida {cantidad_letras2} veces")
|
||||||
|
print(f"Hemos encontrado la letra '{letras[2]}' repetida {cantidad_letras3} veces")
|
||||||
|
|
||||||
|
print("\n")
|
||||||
|
print("CANTIDAD DE PALABRAS")
|
||||||
|
palabras = texto.split()
|
||||||
|
print(f"Hemos encontrado {len(palabras)} palabras en tu texto")
|
||||||
|
|
||||||
|
print("\n")
|
||||||
|
print("LETRAS DE INICIO Y DE FIN")
|
||||||
|
letra_inicio = texto[0]
|
||||||
|
letra_final = texto[-1]
|
||||||
|
print(f"La letra inicial es '{letra_inicio}' y la letra final es '{letra_final}'")
|
||||||
|
|
||||||
|
print("\n")
|
||||||
|
print("TEXTO INVERTIDO")
|
||||||
|
palabras.reverse()
|
||||||
|
texto_invertido = ' '.join(palabras)
|
||||||
|
print(f"Si ordenamos tu texto al revés va a decir: '{texto_invertido}'")
|
||||||
|
|
||||||
|
print("\n")
|
||||||
|
print("BUSCANDO LA PALABRA PYTHON")
|
||||||
|
buscar_python = 'python' in texto
|
||||||
|
dic = {True:"sí", False:"no"}
|
||||||
|
print(f"La palabra 'Python' {dic[buscar_python]} se encuentra en el texto")
|
BIN
doc_curso/04_adivinar_numero/027Operadores+de+Comparación.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/027Operadores+de+Comparación.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/028Operadores+Lógicos.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/028Operadores+Lógicos.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/029Control+de+Flujo.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/029Control+de+Flujo.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/030Loops+While.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/030Loops+While.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/031Rango.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/031Rango.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/032Enumerador.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/032Enumerador.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/033Zip.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/033Zip.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/034Min+&+Max.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/034Min+&+Max.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/035Random.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/035Random.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/036Comprensión+de+Listas.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/036Comprensión+de+Listas.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/037Match.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/037Match.pdf
Normal file
Binary file not shown.
BIN
doc_curso/04_adivinar_numero/038Proyecto+del+Día+4.pdf
Normal file
BIN
doc_curso/04_adivinar_numero/038Proyecto+del+Día+4.pdf
Normal file
Binary file not shown.
23
doc_curso/04_adivinar_numero/039Adivina_el_Numero.py
Normal file
23
doc_curso/04_adivinar_numero/039Adivina_el_Numero.py
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
from random import randint
|
||||||
|
|
||||||
|
intentos = 0
|
||||||
|
estimado = 0
|
||||||
|
numero_secreto = randint(1,100)
|
||||||
|
nombre = input("Dime tu nombre: ")
|
||||||
|
|
||||||
|
print(f"Bueno {nombre}, he pensado un número entre 1 y 100\nTienes 8 intentos para adivinar")
|
||||||
|
|
||||||
|
while intentos < 8:
|
||||||
|
estimado = int(input("Cuál es el número?: "))
|
||||||
|
intentos += 1
|
||||||
|
|
||||||
|
if estimado < numero_secreto:
|
||||||
|
print("Mi numero es mas alto")
|
||||||
|
elif estimado > numero_secreto:
|
||||||
|
print("Mi numero es mas bajo")
|
||||||
|
else:
|
||||||
|
print(f"Felicitaciones {nombre}! Has adivinado en {intentos} intentos")
|
||||||
|
break
|
||||||
|
|
||||||
|
if estimado != numero_secreto:
|
||||||
|
print(f"Lo siento, se han agotado los intentos. El numero secreto era {numero_secreto}")
|
BIN
doc_curso/05_ahorcado/040Documentación.pdf
Normal file
BIN
doc_curso/05_ahorcado/040Documentación.pdf
Normal file
Binary file not shown.
BIN
doc_curso/05_ahorcado/041Funciones.pdf
Normal file
BIN
doc_curso/05_ahorcado/041Funciones.pdf
Normal file
Binary file not shown.
BIN
doc_curso/05_ahorcado/042Return.pdf
Normal file
BIN
doc_curso/05_ahorcado/042Return.pdf
Normal file
Binary file not shown.
BIN
doc_curso/05_ahorcado/043Funciones+Dinámicas.pdf
Normal file
BIN
doc_curso/05_ahorcado/043Funciones+Dinámicas.pdf
Normal file
Binary file not shown.
BIN
doc_curso/05_ahorcado/044Interacción+entre+Funciones.pdf
Normal file
BIN
doc_curso/05_ahorcado/044Interacción+entre+Funciones.pdf
Normal file
Binary file not shown.
BIN
doc_curso/05_ahorcado/045Argumentos+Indefinidos+args.pdf
Normal file
BIN
doc_curso/05_ahorcado/045Argumentos+Indefinidos+args.pdf
Normal file
Binary file not shown.
BIN
doc_curso/05_ahorcado/046Argumentos+Indefinidos+kwargs.pdf
Normal file
BIN
doc_curso/05_ahorcado/046Argumentos+Indefinidos+kwargs.pdf
Normal file
Binary file not shown.
436
doc_curso/05_ahorcado/047Ejercicio_1.pdf
Normal file
436
doc_curso/05_ahorcado/047Ejercicio_1.pdf
Normal file
File diff suppressed because one or more lines are too long
315
doc_curso/05_ahorcado/048Ejercicio_2.pdf
Normal file
315
doc_curso/05_ahorcado/048Ejercicio_2.pdf
Normal file
@ -0,0 +1,315 @@
|
|||||||
|
%PDF-1.4
%âãÏÓ
|
||||||
|
1 0 obj
<</MarkInfo<</Marked true>>/Metadata 2 0 R/Pages 3 0 R/StructTreeRoot 5 0 R/Type/Catalog>>
endobj
2 0 obj
<</Length 3513/Subtype/XML/Type/Metadata>>stream
|
||||||
|
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
|
||||||
|
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c017 91.164464, 2020/06/15-10:20:05 ">
|
||||||
|
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||||
|
<rdf:Description rdf:about=""
|
||||||
|
xmlns:xmp="http://ns.adobe.com/xap/1.0/"
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
|
||||||
|
xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
|
||||||
|
<xmp:ModifyDate>2021-09-05T18:00:53-03:00</xmp:ModifyDate>
|
||||||
|
<xmp:CreateDate>2021-09-05T18:00:53-03:00</xmp:CreateDate>
|
||||||
|
<xmp:MetadataDate>2021-09-05T18:00:53-03:00</xmp:MetadataDate>
|
||||||
|
<xmp:CreatorTool>Canva</xmp:CreatorTool>
|
||||||
|
<dc:format>application/pdf</dc:format>
|
||||||
|
<dc:title>
|
||||||
|
<rdf:Alt>
|
||||||
|
<rdf:li xml:lang="x-default">[S5] Python TOTAL Cheat Sheets</rdf:li>
|
||||||
|
</rdf:Alt>
|
||||||
|
</dc:title>
|
||||||
|
<dc:creator>
|
||||||
|
<rdf:Seq>
|
||||||
|
<rdf:li>Facundo Nicolás Colque</rdf:li>
|
||||||
|
</rdf:Seq>
|
||||||
|
</dc:creator>
|
||||||
|
<xmpMM:DocumentID>uuid:eebf06bf-3e1e-4c14-9cda-85798c1c3f38</xmpMM:DocumentID>
|
||||||
|
<xmpMM:InstanceID>uuid:e9bed3f8-450c-4369-919d-68cb1c24dbc9</xmpMM:InstanceID>
|
||||||
|
<pdf:Producer>Canva</pdf:Producer>
|
||||||
|
<pdf:Keywords>DAEpLMhmRl8,BADsJ4ZOebQ</pdf:Keywords>
|
||||||
|
</rdf:Description>
|
||||||
|
</rdf:RDF>
|
||||||
|
</x:xmpmeta>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<?xpacket end="w"?>
|
||||||
|
endstream
endobj
3 0 obj
<</Count 1/Kids[6 0 R]/MediaBox[0.0 7.91997 1620.0 1627.92]/Type/Pages>>
endobj
5 0 obj
<</IDTree 7 0 R/K 8 0 R/ParentTree 9 0 R/ParentTreeNextKey 1/Type/StructTreeRoot>>
endobj
7 0 obj
<</Names[10 0 R 8 0 R 11 0 R 12 0 R 13 0 R 14 0 R 15 0 R 16 0 R 17 0 R 18 0 R 19 0 R 20 0 R 21 0 R 22 0 R 23 0 R 24 0 R 25 0 R 26 0 R 27 0 R 28 0 R 29 0 R 30 0 R 31 0 R 32 0 R 33 0 R 34 0 R 35 0 R 36 0 R 37 0 R 38 0 R 39 0 R 40 0 R 41 0 R 42 0 R 43 0 R 44 0 R 45 0 R 46 0 R 47 0 R 48 0 R 49 0 R 50 0 R 51 0 R 52 0 R 53 0 R 54 0 R 55 0 R 56 0 R 57 0 R 58 0 R 59 0 R 60 0 R 61 0 R 62 0 R 63 0 R 64 0 R 65 0 R 66 0 R 67 0 R 68 0 R 69 0 R 70 0 R 71 0 R 72 0 R 73 0 R 74 0 R 75 0 R 76 0 R]>>
endobj
8 0 obj
<</ID 10 0 R/K 12 0 R/P 5 0 R/S/Document>>
endobj
9 0 obj
<</Nums[0[36 0 R 40 0 R 52 0 R 54 0 R 54 0 R 56 0 R 56 0 R 58 0 R 60 0 R 60 0 R 64 0 R 64 0 R 76 0 R]]>>
endobj
36 0 obj
<</ID 35 0 R/K<</MCID 0/Pg 6 0 R/Type/MCR>>/P 34 0 R/S/NonStruct>>
endobj
40 0 obj
<</ID 39 0 R/K<</MCID 1/Pg 6 0 R/Type/MCR>>/P 38 0 R/S/NonStruct>>
endobj
52 0 obj
<</ID 51 0 R/K<</MCID 2/Pg 6 0 R/Type/MCR>>/P 50 0 R/S/NonStruct>>
endobj
54 0 obj
<</ID 53 0 R/K[<</MCID 3/Pg 6 0 R/Type/MCR>><</MCID 4/Pg 6 0 R/Type/MCR>>]/P 50 0 R/S/NonStruct>>
endobj
56 0 obj
<</ID 55 0 R/K[<</MCID 5/Pg 6 0 R/Type/MCR>><</MCID 6/Pg 6 0 R/Type/MCR>>]/P 50 0 R/S/NonStruct>>
endobj
58 0 obj
<</ID 57 0 R/K<</MCID 7/Pg 6 0 R/Type/MCR>>/P 50 0 R/S/NonStruct>>
endobj
60 0 obj
<</ID 59 0 R/K[<</MCID 8/Pg 6 0 R/Type/MCR>><</MCID 9/Pg 6 0 R/Type/MCR>>]/P 50 0 R/S/NonStruct>>
endobj
64 0 obj
<</ID 63 0 R/K[<</MCID 10/Pg 6 0 R/Type/MCR>><</MCID 11/Pg 6 0 R/Type/MCR>>]/P 62 0 R/S/NonStruct>>
endobj
76 0 obj
<</ID 75 0 R/K<</MCID 12/Pg 6 0 R/Type/MCR>>/P 74 0 R/S/NonStruct>>
endobj
75 0 obj
(node00036882)
endobj
74 0 obj
<</ID 73 0 R/K 76 0 R/P 72 0 R/S/P>>
endobj
73 0 obj
(node00036881)
endobj
72 0 obj
<</ID 71 0 R/K 74 0 R/P 70 0 R/S/Div>>
endobj
71 0 obj
(node00036880)
endobj
70 0 obj
<</ID 69 0 R/K 72 0 R/P 68 0 R/S/Div>>
endobj
69 0 obj
(node00036878)
endobj
68 0 obj
<</ID 67 0 R/K 70 0 R/P 66 0 R/S/Div>>
endobj
67 0 obj
(node00036877)
endobj
66 0 obj
<</ID 65 0 R/K 68 0 R/P 24 0 R/S/Div>>
endobj
65 0 obj
(node00036876)
endobj
24 0 obj
<</ID 23 0 R/K[26 0 R 42 0 R 66 0 R]/P 22 0 R/S/Div>>
endobj
23 0 obj
(node00036834)
endobj
22 0 obj
<</ID 21 0 R/K 24 0 R/P 20 0 R/S/Div>>
endobj
21 0 obj
(node00036833)
endobj
20 0 obj
<</ID 19 0 R/K 22 0 R/P 18 0 R/S/Div>>
endobj
19 0 obj
(node00036832)
endobj
18 0 obj
<</ID 17 0 R/K 20 0 R/P 16 0 R/S/Div>>
endobj
17 0 obj
(node00036831)
endobj
16 0 obj
<</ID 15 0 R/K 18 0 R/P 14 0 R/S/Div>>
endobj
15 0 obj
(node00036830)
endobj
14 0 obj
<</ID 13 0 R/K 16 0 R/P 12 0 R/S/Div>>
endobj
13 0 obj
(node00036745)
endobj
12 0 obj
<</ID 11 0 R/K 14 0 R/P 8 0 R/S/Div>>
endobj
11 0 obj
(node00036743)
endobj
26 0 obj
<</ID 25 0 R/K 28 0 R/P 24 0 R/S/Div>>
endobj
42 0 obj
<</ID 41 0 R/K 44 0 R/P 24 0 R/S/Div>>
endobj
41 0 obj
(node00036861)
endobj
44 0 obj
<</ID 43 0 R/K 46 0 R/P 42 0 R/S/Div>>
endobj
43 0 obj
(node00036862)
endobj
46 0 obj
<</ID 45 0 R/K 48 0 R/P 44 0 R/S/Div>>
endobj
45 0 obj
(node00036863)
endobj
48 0 obj
<</ID 47 0 R/K[50 0 R 62 0 R]/P 46 0 R/S/Div>>
endobj
47 0 obj
(node00036865)
endobj
50 0 obj
<</ID 49 0 R/K[52 0 R 54 0 R 56 0 R 58 0 R 60 0 R]/P 48 0 R/S/P>>
endobj
62 0 obj
<</ID 61 0 R/K 64 0 R/P 48 0 R/S/P>>
endobj
61 0 obj
(node00036874)
endobj
49 0 obj
(node00036866)
endobj
25 0 obj
(node00036847)
endobj
28 0 obj
<</ID 27 0 R/K 30 0 R/P 26 0 R/S/Div>>
endobj
27 0 obj
(node00036848)
endobj
30 0 obj
<</ID 29 0 R/K 32 0 R/P 28 0 R/S/Div>>
endobj
29 0 obj
(node00036849)
endobj
32 0 obj
<</ID 31 0 R/K[34 0 R 38 0 R]/P 30 0 R/S/Div>>
endobj
31 0 obj
(node00036851)
endobj
34 0 obj
<</ID 33 0 R/K 36 0 R/P 32 0 R/S/P>>
endobj
38 0 obj
<</ID 37 0 R/K 40 0 R/P 32 0 R/S/P>>
endobj
37 0 obj
(node00036854)
endobj
33 0 obj
(node00036852)
endobj
6 0 obj
<</BleedBox[0.0 7.91997 1620.0 1627.9199]/Contents 77 0 R/MediaBox[0.0 7.91997 1620.0 1627.9199]/Parent 3 0 R/Resources<</ExtGState<</G3 78 0 R>>/Font<</F10 79 0 R/F11 80 0 R/F6 81 0 R/F8 82 0 R>>/Pattern<</P14 83 0 R/P15 84 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/StructParents 0/TrimBox[0.0 7.91997 1620.0 1627.9199]/Type/Page>>
endobj
77 0 obj
<</Filter/FlateDecode/Length 2502>>stream
|
||||||
|
xœ½ZÛn$·}Ÿ¯èç |