Skip to content

Commit c813494

Browse files
authored
Merge pull request #5145 from JoseAlberto13/main
FUNCIONES Y ALCANCE
2 parents c55cecc + ff36ad9 commit c813494

File tree

2 files changed

+209
-0
lines changed

2 files changed

+209
-0
lines changed
Lines changed: 146 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,146 @@
1+
"""
2+
* EJERCICIO:
3+
* - Crea ejemplos de funciones básicas que representen las diferentes
4+
* posibilidades del lenguaje:
5+
* Sin parámetros ni retorno, con uno o varios parámetros, con retorno...
6+
* - Comprueba si puedes crear funciones dentro de funciones.
7+
* - Utiliza algún ejemplo de funciones ya creadas en el lenguaje.
8+
* - Pon a prueba el concepto de variable LOCAL y GLOBAL.
9+
* - Debes hacer print por consola del resultado de todos los ejemplos.
10+
* (y tener en cuenta que cada lenguaje puede poseer más o menos posibilidades)
11+
*
12+
* DIFICULTAD EXTRA (opcional):
13+
* Crea una función que reciba dos parámetros de tipo cadena de texto y retorne un número.
14+
* - La función imprime todos los números del 1 al 100. Teniendo en cuenta que:
15+
* - Si el número es múltiplo de 3, muestra la cadena de texto del primer parámetro.
16+
* - Si el número es múltiplo de 5, muestra la cadena de texto del segundo parámetro.
17+
* - Si el número es múltiplo de 3 y de 5, muestra las dos cadenas de texto concatenadas.
18+
* - La función retorna el número de veces que se ha impreso el número en lugar de los textos.
19+
*
20+
* Presta especial atención a la sintaxis que debes utilizar en cada uno de los casos.
21+
* Cada lenguaje sigue una convenciones que debes de respetar para que el código se entienda.
22+
"""
23+
# Funciones definidas por el usuario
24+
25+
# Simple
26+
def saludo():
27+
print("Hola! Soy una función simple")
28+
29+
saludo()
30+
31+
32+
# Con retorno
33+
def return_saludo():
34+
return "Hola, Función con retorno"
35+
36+
print(return_saludo())
37+
38+
39+
# Con un argumento
40+
def arg_saludo(nombre):
41+
print(f"Hola, {nombre}!")
42+
43+
arg_saludo("José Alberto")
44+
45+
46+
# Con varios argumentos
47+
def arg_personal(nombre, edad, sexo, nacionalidad):
48+
print(f"Nombre: {nombre}. Edad: {edad}. Sexo: {sexo}. Nacionalidad: {nacionalidad}")
49+
50+
arg_personal("José", 26, "Masculino", "Venezolana")
51+
52+
53+
# Con un argumento predeterminado (si es que no se diera el argumento del parámetro)
54+
def default_arg_saludo(nombre="Usuario"):
55+
print(f"Bienvenido, {nombre}!")
56+
57+
default_arg_saludo()
58+
default_arg_saludo("Figueroa")
59+
60+
61+
# Con argumentos y return
62+
def args_return(saludo, persona):
63+
return f"{saludo}, {persona}"
64+
65+
print(args_return("Hola!","José A."))
66+
67+
68+
# Con retorno de valores separados
69+
def multiple_return_saludo():
70+
return "Hola", "Python"
71+
72+
saludo, name = multiple_return_saludo()
73+
print(saludo)
74+
print(name)
75+
76+
77+
# Con un número variable de argumentos
78+
def variable_arg_saludo(*nombres):
79+
for nombres in nombres:
80+
print(f"Hola, {nombres}!")
81+
82+
variable_arg_saludo("Mundo", "Python", "Git", "José", "MoureDev")
83+
84+
85+
# Con un número variable de argumentos con palabra clave
86+
def variable_key_arg(**nombres):
87+
for key, value in nombres.items():
88+
print(f"{key}: '{value}'")
89+
90+
variable_key_arg(
91+
lenguaje = "Python",
92+
nombre = "José",
93+
ocupacion = "Estudiante",
94+
alias = "JoseAlberto13",
95+
años = 26
96+
)
97+
98+
99+
# Funciones dentro de Funciones
100+
def outer_function():
101+
def inner_function():
102+
print("inner function: Función dentro de la función")
103+
inner_function()
104+
105+
outer_function()
106+
107+
108+
# Funciones dentro del lenguaje
109+
print(len("José"))
110+
print(type(25.5))
111+
print(sorted({4,2,7,1,5,6,3}))
112+
113+
114+
# Variables locales y globales
115+
variable_global = "Esto es global!"
116+
print(variable_global)
117+
118+
def conVaribale_Global():
119+
variable_local = "Esto es local!"
120+
print(f"Funciónes: local={variable_local} global={variable_global}")
121+
122+
conVaribale_Global()
123+
124+
print(variable_global)
125+
# print(variable_local) no funciona fuera de la funcion definida
126+
127+
128+
"""
129+
DIFICULTAD EXTRA
130+
"""
131+
132+
def lafuncion(texto1, texto2) -> int:
133+
count = 0
134+
for i in range(1,101):
135+
if i % 5 == 0 and i % 3 == 0:
136+
print(texto1 + texto2)
137+
elif i % 3 == 0:
138+
print(texto1)
139+
elif i % 5 == 0:
140+
print(texto2)
141+
else:
142+
print(i)
143+
count += 1
144+
return count
145+
146+
print(lafuncion("Texto #1","Texto #2"))
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
"""
2+
* EJERCICIO:
3+
* - Muestra ejemplos de creación de todas las estructuras soportadas por defecto en tu lenguaje.
4+
* - Utiliza operaciones de inserción, borrado, actualización y ordenación.
5+
*
6+
* DIFICULTAD EXTRA (opcional):
7+
* Crea una agenda de contactos por terminal.
8+
* - Debes implementar funcionalidades de búsqueda, inserción, actualización y eliminación de contactos.
9+
* - Cada contacto debe tener un nombre y un número de teléfono.
10+
* - El programa solicita en primer lugar cuál es la operación que se quiere realizar, y a continuación
11+
* los datos necesarios para llevarla a cabo.
12+
* - El programa no puede dejar introducir números de teléfono no númericos y con más de 11 dígitos.
13+
* (o el número de dígitos que quieras)
14+
* - También se debe proponer una operación de finalización del programa.
15+
"""
16+
17+
# Metodos para estructuras de datos
18+
# Listas
19+
20+
mi_lista = ["Hola Python", "Esto Es", "Una Lista"]
21+
print(mi_lista)
22+
23+
# Inserción
24+
25+
mi_lista.append("Inserta al final")
26+
print(mi_lista)
27+
28+
mi_lista.extend("FINAL")
29+
print(mi_lista)
30+
31+
mi_lista.insert(4,"Inserta en una posición i")
32+
print(mi_lista)
33+
34+
# Borrado
35+
36+
mi_lista.remove("Hola Python")
37+
print(mi_lista)
38+
39+
mi_lista.pop()
40+
print(mi_lista)
41+
42+
mi_lista.pop(0)
43+
print(mi_lista)
44+
45+
"""
46+
mi_lista.clear() #Este metódo elimina todos los elementos de la lista
47+
print(mi_lista)
48+
"""
49+
50+
# Actualización
51+
52+
print(mi_lista[0])
53+
mi_lista[0] = "Actulizamos la lista"
54+
print(mi_lista[0])
55+
print(mi_lista)
56+
57+
# Ordenación
58+
59+
mi_lista.sort()
60+
print(mi_lista)
61+
62+
63+
# Tuplas

0 commit comments

Comments
 (0)