1
+ # EJERCICIO:
2
+ # - Crea ejemplos de funciones básicas que representen las diferentes
3
+ # posibilidades del lenguaje:
4
+ # Sin parámetros ni retorno, con uno o varios parámetros, con retorno...
5
+ # - Comprueba si puedes crear funciones dentro de funciones.
6
+ # - Utiliza algún ejemplo de funciones ya creadas en el lenguaje.
7
+ # - Pon a prueba el concepto de variable LOCAL y GLOBAL.
8
+ # - Debes hacer print por consola del resultado de todos los ejemplos.
9
+ # (y tener en cuenta que cada lenguaje puede poseer más o menos posibilidades)
10
+ #
11
+ # DIFICULTAD EXTRA (opcional):
12
+ # Crea una función que reciba dos parámetros de tipo cadena de texto y retorne un número.
13
+ # - La función imprime todos los números del 1 al 100. Teniendo en cuenta que:
14
+ # - Si el número es múltiplo de 3, muestra la cadena de texto del primer parámetro.
15
+ # - Si el número es múltiplo de 5, muestra la cadena de texto del segundo parámetro.
16
+ # - Si el número es múltiplo de 3 y de 5, muestra las dos cadenas de texto concatenadas.
17
+ # - La función retorna el número de veces que se ha impreso el número en lugar de los textos.
18
+ #
19
+ # Presta especial atención a la sintaxis que debes utilizar en cada uno de los casos.
20
+ # Cada lenguaje sigue una convenciones que debes de respetar para que el código se entienda.
21
+ #
22
+
23
+
24
+ #Definimos una función como un bloque de codigo que lo creamos para poderlo reautilizar con una tarea especifica,
25
+ #para poder manejarla, escalarla, y mantenerla de forma facil.
26
+
27
+ #Funciones defindas por el sistema
28
+
29
+ #"def" es la palabra reservada para la función en python
30
+ #Simple
31
+ def greet ():
32
+ print ('hola Python!' )
33
+
34
+ #se manda llamar a la función
35
+ greet ()
36
+
37
+ #Con retorno
38
+ #ejecuta una logica y devuelve un resultado
39
+ def return_greet ():
40
+ return "hola, Python desde el return!"
41
+ #directamente desde la funcion manejamos el return
42
+ print (return_greet ())
43
+ #O asignandola a variable para manejo posterior
44
+ greetReturn = return_greet ()
45
+ print (greetReturn , "desde fucion en variable" )
46
+
47
+ #Funciones con arguamentos
48
+ #Le pasamos parametros a la funcion para que realice operaciones con el
49
+ def arg_greet (name ):
50
+ print (f"Hola, { name } " )
51
+
52
+ arg_greet ("Lio" )
53
+
54
+
55
+ #Con Varios valores:
56
+ def args_greet (greet , name ):
57
+ print (f"{ greet } , { name } !" )
58
+
59
+ #Con Argumento predeterminado
60
+ args_greet ("hola" , "lio" )
61
+
62
+ def default_arg_greet (name = "Python" ):
63
+ print (f"Hola, { name } " )
64
+
65
+ default_arg_greet ()
66
+
67
+ #Declarando nombre parametros para evitar errores de orde default
68
+ args_greet (name = "Leo" , greet = "Hola con parametros declarados" )
69
+
70
+
71
+ def mult_return_greet ():
72
+ return "hola" , "Python"
73
+
74
+ greet , name = mult_return_greet () #Se desestructuran los valores conforme fueron declarados
75
+ print (greet )
76
+ print (name )
77
+
78
+ #Funciones con numero variable de argumentos
79
+
80
+ def variable_arg_gree (* names ):
81
+ for name in names : #intera dentro de los argumentos recibidos
82
+ print (f"hola, { name } " )
83
+
84
+ variable_arg_gree ("python" , "cancun" , "Leo" , "Lio" )
85
+
86
+ #Con un numero variable de argumentos con palabra clave
87
+ def variable_key_arg_greet (** names ):
88
+ for key , value in names .items ():
89
+ print (f"{ value } ({ key } )" )
90
+
91
+ variable_key_arg_greet (
92
+ name = "Leo" ,
93
+ edad = 31 ,
94
+ lenguaje = "Python" ,
95
+ alias = "Lio7Master"
96
+ )
97
+
98
+ #fucion dentro de funcion+
99
+
100
+ def outer_funtion ():
101
+ def inner_funtion ():
102
+ print ("Funcion interna: hola, Python!" )
103
+ inner_funtion () #Llamamamos a la funcion interna para que se ejecute dentro de la fucion principal.
104
+
105
+ outer_funtion ()
106
+
107
+ #Funciones del lenguaje (Built-in), son funciones que vienen predeterminadas por el lenguje
108
+
109
+ #ejemplo print es una funcion que ya esta definida solo para llamar
110
+
111
+ print (len ("Lio7master" )) #Len conteo de la cadena
112
+ print (type (31 )) #Tipo de dato
113
+ print ("lio7master" .upper ()) #funcion asociado al tipo de dato
114
+
115
+ #concepto de variables locales y globales
116
+ global_var = "Python"
117
+
118
+ def hello_python ():
119
+ local_var = "hola"
120
+ print (f"Hello, { global_var } !" )
121
+
122
+
123
+ print (global_var )
124
+ #print(local_var) no se puede acceder desde fuera de la funcion
125
+
126
+ hello_python ()
127
+
128
+ #EXTRA: ejercicio de fizz buzz
129
+ def print_numbers (text_1 , text_2 ) -> int :
130
+ count = 0
131
+ for number in range (1 , 101 ):
132
+ if number % 5 == 0 and number % 3 == 0 :
133
+ print (text_1 )
134
+ elif number % 3 == 0 :
135
+ print (text_2 )
136
+ elif number % 5 == 0 :
137
+ print (text_1 , text_2 )
138
+ else :
139
+ print (number )
140
+ count += 1
141
+ return count
142
+
143
+ print (print_numbers ("fizz" , "buzz" ))
0 commit comments