ADD dia 03
This commit is contained in:
parent
7cced611b9
commit
8298e6bf22
24
dia_03/01_index.py
Normal file
24
dia_03/01_index.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
|
||||||
|
print("# BUSCAR LA POSICIÓN DE UN CARACTER")
|
||||||
|
# CON index() PODEMOS ENCONTRAR LA POSICIÓN DE UN CARACTER EN UN STRING
|
||||||
|
mi_texto = "hola mundo"
|
||||||
|
posicion = mi_texto.index("o",0,11)
|
||||||
|
print(f"EJEMPLO: La posición del caracter \"o\" es {posicion}")
|
||||||
|
|
||||||
|
# PREGUNTAR LETRA Y DAR POSICIÓN EN FRASE
|
||||||
|
pregunta_carater = input("PREGUNTA: De qué carater quieres saber la posición: ")
|
||||||
|
print(f"El carater \"{pregunta_carater}\" está en la posición \"{mi_texto.index(pregunta_carater)}\"")
|
||||||
|
|
||||||
|
print("\n# SE PUEDE BUSCAR CON rindex PARA BUSCAR DE DERECHA A IZQUIERDA")
|
||||||
|
posicion_r = mi_texto.rindex("o")
|
||||||
|
print(f"EJEMPLO: La posición en búsqueda reversa del caracter \"o\" es {posicion_r}")
|
||||||
|
|
||||||
|
print("\n# BUSCAR EL CARACTER DE UNA POSICIÓN")
|
||||||
|
# SABER LA LETRA DE UNA POSICIÓN
|
||||||
|
que_carater = mi_texto[3]
|
||||||
|
print(f"EJEMPLO: El carater en la posición \"3\" del string es la \"{que_carater}\"")
|
||||||
|
|
||||||
|
# PREGUNTAR POSICIÓN Y DAR RESULTADO EN FRASE
|
||||||
|
pregunta_posicion = int(input("PREGUNTA: De que posición quieres saber el caracter: "))
|
||||||
|
resultado_posicion = mi_texto[pregunta_posicion]
|
||||||
|
print(f"En la posición \"{pregunta_posicion}\" está el caracter \"{resultado_posicion}\"")
|
32
dia_03/02_sub_strings.py
Normal file
32
dia_03/02_sub_strings.py
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# DISTINTAS POSIBILIDADES CON Sub-strings. slicing (rebanar)
|
||||||
|
|
||||||
|
# Limitando la rebanada
|
||||||
|
print("# Limitando la rebanada")
|
||||||
|
texto = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZ"
|
||||||
|
fragmento01 = texto[2:15]
|
||||||
|
print(fragmento01)
|
||||||
|
|
||||||
|
# Hasta el final
|
||||||
|
print("# Hasta el final")
|
||||||
|
fragmento02 = texto[2:]
|
||||||
|
print(fragmento02)
|
||||||
|
|
||||||
|
# Desde el inicio
|
||||||
|
print("# Desde el inicio")
|
||||||
|
fragmento03 = texto[:10]
|
||||||
|
print(fragmento03)
|
||||||
|
|
||||||
|
# Con saltos de dos
|
||||||
|
print("# Con saltos de dos")
|
||||||
|
fragmento04 = texto[2:15:2]
|
||||||
|
print(fragmento04)
|
||||||
|
|
||||||
|
# Con saltos de tres de prinicipio a fin
|
||||||
|
print("# Con saltos de tres de prinicipio a fin")
|
||||||
|
fragmento05 = texto[::3]
|
||||||
|
print(fragmento05)
|
||||||
|
|
||||||
|
# Con saltos de dos desde el final
|
||||||
|
print("# Con saltos de dos desde el final")
|
||||||
|
fragmento06 = texto[::-2]
|
||||||
|
print(fragmento06)
|
53
dia_03/03_metodos.py
Normal file
53
dia_03/03_metodos.py
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
""" Métodos en strings """
|
||||||
|
|
||||||
|
texto = "Este es el texto de Federico"
|
||||||
|
|
||||||
|
# Mayúsculas
|
||||||
|
resultado01 = texto.upper()
|
||||||
|
print(resultado01)
|
||||||
|
|
||||||
|
# Mayúsculas (Podemos determinar un índice)
|
||||||
|
resultado02 = texto[20].upper()
|
||||||
|
print(resultado02)
|
||||||
|
|
||||||
|
# Mayúsculas
|
||||||
|
resultado03 = texto.upper()
|
||||||
|
print(resultado03)
|
||||||
|
|
||||||
|
# Split (Separar dentro de una lista)
|
||||||
|
resultado04 = texto.split()
|
||||||
|
print(resultado04)
|
||||||
|
|
||||||
|
# Split (Separar dentro de una lista) Se puede seleccionar el elemento separador
|
||||||
|
resultado05 = texto.split(" ")
|
||||||
|
print(resultado05)
|
||||||
|
|
||||||
|
# Join
|
||||||
|
a = "Aprender"
|
||||||
|
b = "Python"
|
||||||
|
c = "es"
|
||||||
|
d = "genial"
|
||||||
|
unir = "-".join([a,b,c,d])
|
||||||
|
print(unir)
|
||||||
|
|
||||||
|
# Find
|
||||||
|
resultado06 = texto.find("F")
|
||||||
|
print(resultado06)
|
||||||
|
|
||||||
|
## La diferencia de find con index es que
|
||||||
|
## si buscas un carácter que no existe no da error
|
||||||
|
## arroja el valor -1
|
||||||
|
resultado07 = texto.find("g")
|
||||||
|
print(resultado07)
|
||||||
|
|
||||||
|
# Reemplazar
|
||||||
|
resultado08 = texto.replace("Federico", "Manuel")
|
||||||
|
print(resultado08)
|
||||||
|
|
||||||
|
|
||||||
|
frase = "Si la implementación es difícil de explicar, puede que sea una mala idea."
|
||||||
|
|
||||||
|
resultado001 = frase.replace("difícil","fácil")
|
||||||
|
resultado002 = resultado001.replace("mala","buena")
|
||||||
|
|
||||||
|
print(resultado002)
|
55
dia_03/04_string.py
Normal file
55
dia_03/04_string.py
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
# Métodos de strings
|
||||||
|
|
||||||
|
## Métodos de análisis
|
||||||
|
|
||||||
|
print("Hola mundo".count("Hola"))
|
||||||
|
|
||||||
|
print("Hola mundo".find("world"))
|
||||||
|
|
||||||
|
print("C:/python36/python.exe".rfind("/"))
|
||||||
|
|
||||||
|
print("Hola mundo".startswith("Hola"))
|
||||||
|
|
||||||
|
print("abc123".isdigit())
|
||||||
|
|
||||||
|
print("1234".isnumeric())
|
||||||
|
|
||||||
|
print("1234".isdecimal())
|
||||||
|
|
||||||
|
print("abc123".isalnum())
|
||||||
|
|
||||||
|
print("abc123".isalpha())
|
||||||
|
|
||||||
|
print("abcdef".islower())
|
||||||
|
|
||||||
|
print("ABCDEF".isupper())
|
||||||
|
|
||||||
|
print("Hola mundo".isspace())
|
||||||
|
|
||||||
|
print("hola mundo".capitalize())
|
||||||
|
|
||||||
|
print("Hola mundo".encode("utf-8"))
|
||||||
|
|
||||||
|
print("Hola mundo".replace("mundo", "world"))
|
||||||
|
|
||||||
|
print("Hola Mundo!".lower())
|
||||||
|
|
||||||
|
print("Hola Mundo!".upper())
|
||||||
|
|
||||||
|
print("Hola Mundo!".swapcase())
|
||||||
|
|
||||||
|
print(" Hola mundo! ".strip())
|
||||||
|
|
||||||
|
print("Hola".center(10, "*"))
|
||||||
|
|
||||||
|
print("Hola mundo!\nHello world!".split())
|
||||||
|
|
||||||
|
print("Hola mundo!\nHello world!".splitlines())
|
||||||
|
|
||||||
|
print("Hola mundo. Hello world!".partition(" "))
|
||||||
|
|
||||||
|
print("Hola mundo. Hello world!".rpartition(" "))
|
||||||
|
|
||||||
|
print(", ".join(["C", "C++", "Python", "Java"]))
|
||||||
|
|
||||||
|
|
37
dia_03/05_propiedades.py
Normal file
37
dia_03/05_propiedades.py
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
#INMUTABLE
|
||||||
|
# Este código intenta cambiar un caracter del string,
|
||||||
|
# con lo que no permitirá, dará error
|
||||||
|
|
||||||
|
# nombre = "Carina"
|
||||||
|
# nombre[0] = "K"
|
||||||
|
# print(nombre)
|
||||||
|
|
||||||
|
#CONCATENAR
|
||||||
|
n1 = "Kari"
|
||||||
|
n2 = "na"
|
||||||
|
print(n1 + n2)
|
||||||
|
|
||||||
|
# MULTIPLICAR
|
||||||
|
print(n1 * 5)
|
||||||
|
|
||||||
|
# MULTILINEA
|
||||||
|
# Perfecto para poemas
|
||||||
|
poema = """ Mil pequeños peces blancos
|
||||||
|
como si hirviera
|
||||||
|
el color del agua."""
|
||||||
|
print(poema)
|
||||||
|
|
||||||
|
# VERIFICAR contenido. booleano
|
||||||
|
print("agua" in poema)
|
||||||
|
|
||||||
|
# También se puede verificar si NO está
|
||||||
|
print("escorbuto" not in poema)
|
||||||
|
|
||||||
|
# LONGITUD DE STRING
|
||||||
|
print(len(poema))
|
||||||
|
|
||||||
|
print(len("Otro ejemplo"))
|
||||||
|
print(len("Anticonstitucionalidades"))
|
||||||
|
print(len("electroencefalografistas"))
|
||||||
|
print(len("Esternocleidomastoideo"))
|
||||||
|
|
36
dia_03/06_listas.py
Normal file
36
dia_03/06_listas.py
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
# LAS LISTAS
|
||||||
|
lista_1 = ["C", "C++", "Python", "Java"]
|
||||||
|
lista_2 = ["PHP", "SQL", "Visual Basic"]
|
||||||
|
lista_3 = ["d", "a", "c", "b", "e"]
|
||||||
|
lista_4 = [5, 4, 7, 1, 9]
|
||||||
|
|
||||||
|
# Ver tipo de dato de las listas
|
||||||
|
print(type(lista_1))
|
||||||
|
|
||||||
|
# Concatenar listas
|
||||||
|
lista_1_2 = lista_1 + lista_2
|
||||||
|
print(lista_1_2)
|
||||||
|
|
||||||
|
# EN LAS LISTAS SE PUEDEN MODIFICAR LOS ELEMENTOS
|
||||||
|
# Agregar un elemento a la lista
|
||||||
|
lista_1.append("R")
|
||||||
|
print(lista_1)
|
||||||
|
|
||||||
|
# Eliminar un elemento de la lista con el índice (Devuelve el valor eliminado)
|
||||||
|
print(lista_1.pop(4))
|
||||||
|
|
||||||
|
guardar_elemento = lista_1_2.pop(2)
|
||||||
|
print(guardar_elemento)
|
||||||
|
|
||||||
|
# Ordenar los elementos de la lista
|
||||||
|
lista_3.sort()
|
||||||
|
print(lista_3)
|
||||||
|
# Cuidado que no devuelve nada, modifica la variable
|
||||||
|
guardar_sort = lista_3.sort()
|
||||||
|
print(guardar_sort)
|
||||||
|
# Es de tipo None, un objecto sin valor, que no es lo mismo que 0
|
||||||
|
print(type(guardar_sort))
|
||||||
|
|
||||||
|
# Invierte el orden de los elementos (No es lo opuesto a sort)
|
||||||
|
lista_4.reverse()
|
||||||
|
print(lista_4)
|
56
dia_03/07_diccionarios.py
Normal file
56
dia_03/07_diccionarios.py
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
# DICCIONARIOS (No se puede repetir el valor)
|
||||||
|
mi_diccionario = {"c1":"valor1","c2":"valor2"}
|
||||||
|
print(type(mi_diccionario))
|
||||||
|
print(mi_diccionario)
|
||||||
|
|
||||||
|
# Guardando un valor
|
||||||
|
resultado = mi_diccionario['c1']
|
||||||
|
print(resultado)
|
||||||
|
|
||||||
|
# Ejemplo 1
|
||||||
|
cliente = {
|
||||||
|
'nombre':'Juan',
|
||||||
|
'apellido':'Fuentes',
|
||||||
|
'peso':'88',
|
||||||
|
'talla':'1760'
|
||||||
|
}
|
||||||
|
consulta = (cliente['talla'])
|
||||||
|
print(consulta)
|
||||||
|
|
||||||
|
# Ejemplo 2
|
||||||
|
paciente ={
|
||||||
|
"nombre":"Eusebio",
|
||||||
|
"apellido":"García",
|
||||||
|
"peso":82.6,
|
||||||
|
"altura":"172"
|
||||||
|
}
|
||||||
|
print(f"El paciente se llama {paciente['nombre']} {paciente['apellido']} pesa {paciente['peso']} kg y mide {paciente['altura']} cm.")
|
||||||
|
|
||||||
|
# Diccionarios anidados y listas anidadas
|
||||||
|
dic = {'c1':55,'c2':[10,20,30],'c3':{'s1':100,'s2':200}}
|
||||||
|
print(dic['c2'])
|
||||||
|
print(dic['c2'][1])
|
||||||
|
print(dic['c3'])
|
||||||
|
print(dic['c3']['s2'])
|
||||||
|
|
||||||
|
# Ejercicio sacar la letra e en mayúscula
|
||||||
|
diccio = {'c1':['a','b','c'],'c2':['d','e','f']}
|
||||||
|
print(diccio['c2'][1].upper())
|
||||||
|
|
||||||
|
# Cambios en un diccionario
|
||||||
|
dic2 = {1:'a',2:'b'}
|
||||||
|
print(dic2)
|
||||||
|
dic2[3] = 'c'
|
||||||
|
print(dic2)
|
||||||
|
dic2[2] = 'B'
|
||||||
|
print(dic2)
|
||||||
|
print(dic2.keys())
|
||||||
|
print(dic2.values())
|
||||||
|
print(dic2.items())
|
||||||
|
|
||||||
|
mi_dic = {"nombre":"Karen", "apellido":"Jurgens", "edad":35, "ocupacion":"Periodista"}
|
||||||
|
mi_dic['edad'] = 36
|
||||||
|
mi_dic['ocupacion'] = 'Editora'
|
||||||
|
mi_dic['pais'] = 'Colombia'
|
||||||
|
|
||||||
|
print(mi_dic)
|
33
dia_03/08_tuplas.py
Normal file
33
dia_03/08_tuplas.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
mi_tuple = (1,2,3,4)
|
||||||
|
mi_tuple2 = 1,2,(10,20),4
|
||||||
|
print(type(mi_tuple))
|
||||||
|
print(mi_tuple2)
|
||||||
|
|
||||||
|
print(mi_tuple[2])
|
||||||
|
print(mi_tuple[-2])
|
||||||
|
|
||||||
|
print(mi_tuple2[2][0])
|
||||||
|
|
||||||
|
# El tuple se puede convertir en una lista
|
||||||
|
mi_tuple =list(mi_tuple)
|
||||||
|
print(type(mi_tuple))
|
||||||
|
# También al revés, se puede convertir una lista en un tuple
|
||||||
|
mi_tuple =tuple(mi_tuple)
|
||||||
|
print(type(mi_tuple))
|
||||||
|
|
||||||
|
# Se puede dar cada uno de los valores a una variable distinta
|
||||||
|
# pero tienen que coincidir la cantidad de valores con las variables
|
||||||
|
t = 1,2,1
|
||||||
|
x,y,z = t
|
||||||
|
print(x, y, z)
|
||||||
|
|
||||||
|
# Se puede pedir el número de elementos
|
||||||
|
print(len(t))
|
||||||
|
|
||||||
|
# Se puede contar la cantidad de apareciones de un valor
|
||||||
|
print(t.count(1))
|
||||||
|
|
||||||
|
# También se puede consultar el indice de un valor
|
||||||
|
print(t.index(2))
|
||||||
|
|
||||||
|
|
46
dia_03/09_set.py
Normal file
46
dia_03/09_set.py
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
""" Sets """
|
||||||
|
|
||||||
|
mi_set = set([1, 2, 3, 4, 5])
|
||||||
|
print(type(mi_set))
|
||||||
|
print(mi_set)
|
||||||
|
|
||||||
|
# No acepta repeticiones
|
||||||
|
# No acepta listas
|
||||||
|
# pero sí tuples porque son inmutables
|
||||||
|
otro_set = set([1, 2, 3, 4, 5, (1,2,3), 1, 1, 1])
|
||||||
|
print(otro_set)
|
||||||
|
|
||||||
|
print(len(mi_set))
|
||||||
|
|
||||||
|
print(2 in mi_set)
|
||||||
|
|
||||||
|
# MÉTODOS
|
||||||
|
|
||||||
|
# Union
|
||||||
|
s1 = {1,2,3}
|
||||||
|
s2 = {3,4,5}
|
||||||
|
s3 = s1.union(s2)
|
||||||
|
print(s3)
|
||||||
|
|
||||||
|
# Agregar
|
||||||
|
s1.add(4)
|
||||||
|
print(s1)
|
||||||
|
|
||||||
|
# Eliminar. Si no encuentra el elemento
|
||||||
|
# da error
|
||||||
|
s1.remove(3)
|
||||||
|
print(s1)
|
||||||
|
|
||||||
|
# Descartar. Funciona como remove
|
||||||
|
# pero no da error si no encuentra el elemento
|
||||||
|
s1.discard(3)
|
||||||
|
print(s1)
|
||||||
|
|
||||||
|
# Elimina un elemento aleatorio
|
||||||
|
sorteo = s1.pop()
|
||||||
|
print(sorteo)
|
||||||
|
print(s1)
|
||||||
|
|
||||||
|
# Vaciar el set
|
||||||
|
s1.clear()
|
||||||
|
print(s1)
|
23
dia_03/10_booleanos.py
Normal file
23
dia_03/10_booleanos.py
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
"""
|
||||||
|
booleano
|
||||||
|
"""
|
||||||
|
|
||||||
|
# Creación directa del booleano
|
||||||
|
var1 = True
|
||||||
|
var2 = False
|
||||||
|
print(type(var1))
|
||||||
|
print(var1)
|
||||||
|
|
||||||
|
# Creación indirecta del booleano
|
||||||
|
numero = 5 > 2+3
|
||||||
|
print(type(numero))
|
||||||
|
print(numero)
|
||||||
|
|
||||||
|
# Creación explícita
|
||||||
|
compara = bool(5 != 5+1)
|
||||||
|
print(compara)
|
||||||
|
|
||||||
|
lista = (1, 2, 3, 4)
|
||||||
|
control = 5 not in lista
|
||||||
|
print(type(control))
|
||||||
|
print(control)
|
31
dia_03/11_programa03.py
Normal file
31
dia_03/11_programa03.py
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
"""
|
||||||
|
Programa día 3 - Analizador de text
|
||||||
|
"""
|
||||||
|
|
||||||
|
txt = input("""
|
||||||
|
Ingresa un texto para analizar
|
||||||
|
""")
|
||||||
|
|
||||||
|
print("\nIngresa tres letras por favor")
|
||||||
|
l1 = input("\tIngresa la primera letra: ")
|
||||||
|
l2 = input("\tIngresa la segunda letra: ")
|
||||||
|
l3 = input("\tIngresa la tercera letra: ")
|
||||||
|
|
||||||
|
letras = [l1, l2, l3]
|
||||||
|
|
||||||
|
print("\nPRIMERO. Vamos a ver las veces que aparecen las letras en el texto:")
|
||||||
|
print(f"\t- La letra {l1} se encuentra {txt.lower().count(letras[0].lower())} veces en el texto.")
|
||||||
|
print(f"\t- La letra {l2} se encuentra {txt.lower().count(letras[1].lower())} veces en el texto.")
|
||||||
|
print(f"\t- La letra {l3} se encuentra {txt.lower().count(letras[2].lower())} veces en el texto.")
|
||||||
|
|
||||||
|
print(f"\nSEGUNDO. El texto tiene {len(txt.split())} palabras.")
|
||||||
|
|
||||||
|
pos_pri = txt[0]
|
||||||
|
pos_fin = txt[-1]
|
||||||
|
print(f"\nTERCERO. La primera letra del texto es \"{pos_pri}\" y la última es \"{pos_fin}\"")
|
||||||
|
|
||||||
|
print(f"\nCUARTO. Cuidao, el texto al revés es así:\n{' '.join(txt[::-1])}")
|
||||||
|
|
||||||
|
ser_o_no_ser = ("python" in txt)
|
||||||
|
dic_si_o_no = {True:"sí",False:"no"}
|
||||||
|
print(f"\nQUINTO. La palabra python {dic_si_o_no[ser_o_no_ser]} se encuentra en el texto")
|
Loading…
Reference in New Issue
Block a user