Skip to content

Commit 7b6f0c7

Browse files
authored
Merge pull request mouredev#4690 from fborjalv/main
#1 - Python
2 parents 391d522 + 1fcbe05 commit 7b6f0c7

File tree

3 files changed

+352
-0
lines changed

3 files changed

+352
-0
lines changed
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
# EJERCICIOS
2+
3+
# Tipos de operadores: Aritméticos, Lógicos, Relacionales, asignación, pertenencia, identidad
4+
# Asignación:
5+
6+
operador_a = 4
7+
operador_b = 2
8+
9+
# Aritméticos
10+
print("--- OPERADORES ARITMÉTICOS---")
11+
print(f"Suma: {operador_a + operador_b} ")
12+
print(f"Resta: {operador_a - operador_b}")
13+
print(f"División: {operador_a / operador_b}")
14+
print(f"Multiplicación: {operador_a * operador_b}")
15+
print(f"Resto: {operador_a % operador_b}")
16+
print(f"Potencia: {operador_a ** operador_b}")
17+
18+
# Lógicos
19+
print("--- OPERADORES LÓGICOS ---")
20+
print("si primer elemento es 2 y si segundo elemento es 4")
21+
print(operador_a == 2 and operador_b == 4)
22+
print("si primer elemento es 2 O segundo elemeto es 5")
23+
print(operador_a == 2 or operador_b ==5 )
24+
print("si primer elemento NO es 2")
25+
print(not operador_a == 4)
26+
27+
28+
# Relacionales
29+
print("--- OPERADORES RELACIONALES ---")
30+
print(f"2 es mayor que 4: {operador_b > operador_a}")
31+
print(f"2 es menor que 4: {operador_b < operador_a}")
32+
print(f"2 es igual que 4: {operador_b == operador_a}")
33+
print(f"2 No es igual que 4: {operador_b != operador_a}")
34+
print(f"2 es menor o igual que 4: {operador_b <= operador_a}")
35+
print(f"2 es menor o igual que 4: {operador_b >= operador_a}")
36+
37+
38+
# Asignación
39+
40+
print("--- OPERADORES DE ASIGNACIÓN ---")
41+
42+
contador = 6 #asigna un valor
43+
print(contador)
44+
contador += 1 #incremeta valor en 1 y lo asigna a la variable
45+
print(contador)
46+
contador -= 1 #reduce valor en 1 y lo asigna a la variable
47+
print(contador)
48+
contador *= 2
49+
print(contador)
50+
contador /= 2
51+
print(contador)
52+
contador %= 2
53+
print(contador)
54+
55+
56+
# Estructuras de control: condicionales (if), iterativas (for, while), excepciones
57+
58+
a = 4
59+
b = 3
60+
c = 5
61+
62+
# CONDICIONALES
63+
if a == 3:
64+
print("a es igual a cuatro")
65+
elif b != 5:
66+
print("b no es igual a cinco")
67+
elif c == 4:
68+
print ("c es igual a cuatro")
69+
else:
70+
print("hemos llegado al final")
71+
72+
# ITERATIVAS:
73+
var = "fborjalv"
74+
75+
for i in var:
76+
print(i)
77+
78+
count = 0
79+
while count < len(var):
80+
print(var[count])
81+
count +=1
82+
83+
try:
84+
print(10/0)
85+
except:
86+
print("no se puede divir por cero")
87+
finally:
88+
print("Fin al control de excepciones ")
89+
90+
# DIFICULTAD EXTRA:
91+
92+
for num in range(10,56):
93+
if num % 2 == 0 and not (num == 16 or num % 3 == 0):
94+
print(num)
95+
96+
Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
# FUNCIONES EN PYTHON
2+
3+
# Funcionaes sin parámetros y sin retorno
4+
5+
def func_no_param_no_return():
6+
print("Soy una función sin parámetros ni retorno")
7+
8+
# Funciones con un parametro
9+
10+
func_no_param_no_return()
11+
12+
def func_param_no_return(param1, param2):
13+
print(f"Soy una función con estos parametros: {param1, param2}")
14+
15+
func_param_no_return(354, "string")
16+
17+
def func_param_no_return_tipado(param1: str, param2: int):
18+
print(f"Soy una función con estos parametros tipados: {param1, param2}")
19+
20+
func_param_no_return_tipado(354, "string") # Python no impore restricciones
21+
22+
def func_param_predefinidos(name="Borja", l_name="Laja"):
23+
print(f"Soy {name} {l_name}")
24+
25+
func_param_predefinidos()
26+
func_param_predefinidos("Brais", "Moure")
27+
28+
# Funciones con varios parámetros
29+
30+
def func_param_varias_variables(*nombres):
31+
print(nombres)
32+
33+
func_param_varias_variables("Montaña", "Playa", "Campo")
34+
35+
# Con un número variable de argumentos con palabra clave
36+
37+
def variable_key_arg_greet(**names):
38+
for key, value in names.items():
39+
print(f"{value} ({key})!")
40+
41+
42+
variable_key_arg_greet(
43+
language="Python",
44+
name="Borja",
45+
alias="fborjalv",
46+
age=32)
47+
48+
# Funciones con retorno
49+
50+
def func_con_retorno(numero, numero_2):
51+
return numero + numero_2
52+
53+
print(func_con_retorno(2, 3))
54+
55+
# Funciones con varios retornos
56+
57+
def func_con_varios_retornos(numero, numero_2):
58+
return numero, numero_2
59+
print(func_con_varios_retornos(4, 6))
60+
61+
# Funciones dentro de funciones
62+
63+
def func_padre():
64+
print("soy la función padre")
65+
def func_hijo():
66+
print("soy la función hijo")
67+
func_hijo()
68+
69+
func_padre()
70+
71+
# Variables locales y globales
72+
73+
my_var_global = "Soy una variable global"
74+
75+
def manejo_de_variables():
76+
my_var_local = "Soy una variable local"
77+
print(my_var_global)
78+
print(my_var_local)
79+
80+
81+
def manejo_de_variables_hija():
82+
my_var_local_hija = "Soy variable local hija"
83+
print(my_var_global)
84+
print(my_var_local)
85+
print(my_var_local_hija)
86+
87+
print(my_var_global)
88+
print(manejo_de_variables())
89+
90+
# EJERCICIO EXTRA
91+
92+
def multiplos (text: str, text_2: str):
93+
94+
contador = 0
95+
96+
for index in range(1, 101):
97+
98+
if index % 3 == 0 and index % 5 == 0:
99+
print(index, text + " " + text_2)
100+
101+
elif index % 3 == 0:
102+
print(index, text)
103+
104+
elif index % 5 == 0:
105+
print(index, text_2)
106+
107+
else:
108+
print(index)
109+
contador += 1
110+
111+
return contador
112+
113+
contador = multiplos("primer", "segundo")
114+
print(f"Números que no son múltiplos ni de 3 ni de 5: {contador}")
Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
# ESTRUCTURAS - inserción, borrado, actualización y ordenación
2+
3+
# LIST ARRAY
4+
5+
print("LISTAS")
6+
7+
list_user: list = ["Angel", "Borja", "Zaida", "Carlos", "Maite", "Pedro"]
8+
print(list_user)
9+
10+
# inserción
11+
list_user.append("Carolina")
12+
print(list_user)
13+
14+
# borrado
15+
list_user.remove("Carlos")
16+
print(list_user)
17+
18+
# actualización
19+
20+
list_user[0] = "Ángel"
21+
print(list_user)
22+
23+
# ordenación
24+
list_user.sort(reverse=False)
25+
print(list_user)
26+
27+
28+
# TUPLAS
29+
print("TUPLAS: son inmutables")
30+
list_compra: tuple = ("pan", "leche", "verduras", "huevos", "aceite")
31+
print(list_compra)
32+
33+
#ordenación - se tiene que transformar en lista
34+
list_compra_ordenada = sorted(list_compra)
35+
print(list_compra_ordenada, type(list_compra_ordenada))
36+
print(tuple(list_compra_ordenada), type(tuple(list_compra_ordenada)))
37+
38+
# SET - CONJUNTOS
39+
print("SETs: elementos únicos, no repetidos")
40+
set_coches: set = {"Ford", "Toyota", "Mercedes", "BMW", "Renault"}
41+
42+
print(set_coches)
43+
44+
#inserción
45+
set_coches.add("Hyundai")
46+
print(set_coches)
47+
set_coches.add("Ford") # NO SE AÑADE PORQUE ESTARÍA DUPLICADO
48+
49+
# borrado
50+
set_coches.remove("Renault")
51+
print(set_coches)
52+
53+
# ordenar
54+
set_coches_ord = sorted(set_coches)
55+
print(set_coches_ord, type(set_coches_ord))
56+
print(set(set_coches_ord), type(set(set_coches_ord))) # NO SE PUEDEN ORDENAR, TIENEN QUE SER LISTAS
57+
58+
# DICCIONARIOS
59+
print("DICCIONARIOS")
60+
61+
bbdd_coches: dict = {
62+
"Ford": 23445,
63+
"BMW": 43525,
64+
"Toyota": 34543,
65+
"Mercedes": 34885,
66+
}
67+
68+
print(bbdd_coches)
69+
70+
# inserción
71+
72+
bbdd_coches["Hyundai"] = 45356
73+
print(bbdd_coches)
74+
75+
# borrado
76+
77+
bbdd_coches.pop("Toyota")
78+
del bbdd_coches["BMW"]
79+
print(bbdd_coches)
80+
81+
# actualización
82+
83+
bbdd_coches["Ford"] = "No disponible"
84+
print(bbdd_coches)
85+
86+
# ordenación
87+
88+
print(sorted(bbdd_coches))
89+
90+
# EJERCICIO
91+
92+
def func_agenda():
93+
94+
agenda = {
95+
"borja": 234234243
96+
}
97+
98+
def nuevo_contacto(nombre, telefono):
99+
if telefono.isdigit() and len(telefono) > 0 and len(telefono) < 11:
100+
agenda[nombre] = telefono
101+
else:
102+
print(
103+
"Debes introducir un número de teléfono un máximo de 11 dígitos.")
104+
105+
option = input("""
106+
Introduce una de las siguientes opciones:
107+
108+
1. Buscar un contacto
109+
2. Añadir un nuevo contacto
110+
3. Actualizar un contacto
111+
4. Eliminar un contacto
112+
5. Salir """)
113+
114+
if option == "1":
115+
nombre = input("Buscar por nombre: ")
116+
if nombre in agenda:
117+
print(f"El numero de telefóno de {nombre} es {agenda[nombre]}")
118+
else:
119+
print("el nombre no está en la agenda")
120+
elif option == "2":
121+
nombre = input("Introduce el nombre del nuevo contacto: ")
122+
telefono = input("Introduce el telefono del nuevo contacto: ")
123+
nuevo_contacto(nombre, telefono)
124+
125+
elif option == "3":
126+
nombre = input("Introduce el nombre que quieres actualizar: ")
127+
if nombre in agenda:
128+
telefono = input("Introduce el nuevo telefono del contacto: ")
129+
nuevo_contacto(nombre, telefono)
130+
else:
131+
print("El contacto no existe")
132+
133+
elif option == "4":
134+
nombre = input("Introduce el contacto que quieres eliminar: ")
135+
if nombre in agenda:
136+
del agenda[nombre]
137+
else:
138+
print("El contacto no existe")
139+
elif option == "5":
140+
print("saliendo del programa...")
141+
142+
func_agenda()

0 commit comments

Comments
 (0)