Skip to content

Commit 7e197c7

Browse files
committed
#2 - Python
1 parent 220bc1b commit 7e197c7

File tree

1 file changed

+167
-0
lines changed

1 file changed

+167
-0
lines changed
Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
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+
24+
## Funcion sin retorno y sin argumentos
25+
26+
27+
from cgi import print_arguments
28+
29+
30+
def saludar():
31+
print("Hola a todos!")
32+
33+
34+
saludar()
35+
36+
## Funcion con retorno sin argumentos
37+
38+
39+
def my_name():
40+
return "Lucas"
41+
42+
43+
print(my_name())
44+
45+
## Funcion con retorno y argumentos
46+
47+
48+
def suma(a, b):
49+
return a + b
50+
51+
52+
print(suma(1, 1))
53+
54+
55+
## Funcion con parametro por defecto
56+
57+
58+
def saludo_default(nombre="Lucas"):
59+
print(f"Hola {nombre}")
60+
61+
62+
saludo_default()
63+
64+
65+
## Retorno multiple
66+
67+
68+
def saludar_multiple():
69+
return "Hola", "Python"
70+
71+
72+
saludo, name = saludar_multiple()
73+
74+
print(saludo)
75+
print(name)
76+
77+
## Con numero variables de argumentos posicionales
78+
79+
80+
def variables_args_saludo(*args):
81+
for name in args:
82+
print(f"Hola {name}")
83+
84+
85+
variables_args_saludo("pablo", "comunidad", "Python")
86+
87+
## Con numero variable de argumentos pero con **kwargs
88+
89+
90+
def kwargs_saludo(**kwargs):
91+
for key, value in kwargs.items():
92+
print(f"{key} : {value}")
93+
94+
95+
kwargs_saludo(nombre1="lucas", nombre2="pepe", nombre3="numero")
96+
97+
98+
## Funciones detro de otras
99+
100+
101+
def funcion_exterior():
102+
def funcion_interna():
103+
print("Funcion interna: Hola Python")
104+
105+
funcion_interna()
106+
107+
108+
funcion_exterior()
109+
110+
## Funciones del lenguaje
111+
112+
print("Imprime el texto")
113+
114+
print(len("String"))
115+
print(len([1, 2, 3]))
116+
117+
print(type(6))
118+
print(type(True))
119+
print(type("6"))
120+
121+
print(chr(45))
122+
123+
print(hash("Hola"))
124+
125+
## Variable locales y globales
126+
127+
variable_global = "Node.js"
128+
129+
print(variable_global)
130+
131+
132+
def hello_node():
133+
variable_local = "Python"
134+
print(f"Hola, {variable_local} {variable_global}")
135+
136+
137+
print(variable_global)
138+
139+
hello_node()
140+
141+
""" * DIFICULTAD EXTRA (opcional):
142+
* Crea una función que reciba dos parámetros de tipo cadena de texto y retorne un número.
143+
* - La función imprime todos los números del 1 al 100. Teniendo en cuenta que:
144+
* - Si el número es múltiplo de 3, muestra la cadena de texto del primer parámetro.
145+
* - Si el número es múltiplo de 5, muestra la cadena de texto del segundo parámetro.
146+
* - Si el número es múltiplo de 3 y de 5, muestra las dos cadenas de texto concatenadas.
147+
* - La función retorna el número de veces que se ha impreso el número en lugar de los textos.
148+
* """
149+
150+
151+
def print_numbers(cadena1: str, cadena2: str):
152+
contador = 0
153+
154+
for num in range(1, 102):
155+
if num % 3 == 0 and num % 5 == 0:
156+
print(cadena1 + cadena2)
157+
elif num % 3 == 0:
158+
print(cadena1)
159+
elif num % 5 == 0:
160+
print(cadena2)
161+
else:
162+
print(num)
163+
contador += 1
164+
165+
return contador
166+
167+
print(print_numbers("fizz", "buzz"))

0 commit comments

Comments
 (0)