Skip to content

Commit eaab11f

Browse files
authored
Merge pull request mouredev#5082 from joandevpy/mi-reto-00
Mi reto 00
2 parents dc33c13 + 58378ba commit eaab11f

File tree

3 files changed

+237
-5
lines changed
  • Roadmap

3 files changed

+237
-5
lines changed

Roadmap/00 - SINTAXIS, VARIABLES, TIPOS DE DATOS Y HOLA MUNDO/python/joandevpy.py

+3-5
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,13 @@
33
# Esto es un comentario
44

55
"""
6-
Esto es comentario en varias lineas en Python
7-
6+
Esto es un comentario en varias lineas en Python
87
"""
98

109
'''
11-
12-
Esto es comentario en varias lineas en Python
13-
10+
Esto tambien es un comentario en varias lineas en Python
1411
'''
12+
1513
# Crear variable
1614
mi_variable = "Hola, esta es mi variable"
1715

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
2+
# Operadores aritméticos
3+
4+
print("Operadores aritméticos:")
5+
print(f"Suma: 10 + 3 = {10 + 3}")
6+
print(f"Resta: 10 - 3 = {10 - 3}")
7+
print(f"Multiplicación: 10 * 3 = {10 * 3}")
8+
print(f"División: 10 / 3 = {10 / 3}")
9+
print(f"División entera: 10 // 3 = {10 // 3}")
10+
print(f"Modulo: 10 % 3 = {10 % 3}")
11+
print(f"Exponencial: 10 ** 3 = {10 ** 3}")
12+
13+
"""
14+
Operadores de comparación-
15+
Pueden ser con variables__|
16+
"""
17+
print("\nOperadores de comparación:")
18+
print(f"Igual 10 == 3 : {10 == 3}")
19+
print(f"Desigual 10 != 3 : {10 != 3}")
20+
print(f"Maypr que 10 > 3 : {10 > 3}")
21+
print(f"Menor que 10 < 3 : {10 < 3}")
22+
print(f"Mayor o igual que 10 >= 10 : {10 >= 10}")
23+
print(f"Menor o igual que 10 <= 3 : {10 <= 3}")
24+
25+
# Operadores lógicos
26+
print("\nOperadores lógicos:")
27+
print(f"10 > 5 and 3 < 5 : {10 > 5 and 3 < 5}")
28+
print(f"3 > 5 or || 3 < 2 : {10 > 5 or 3 < 2}")
29+
print(f"not(10 > 5) : {not 10 > 5}")
30+
31+
# Operadores de asignación
32+
my_number = 11
33+
34+
print("\nOperadores de asignación:")
35+
print(f"my_number es {my_number}")
36+
my_number += 5
37+
print(f"my_number += 5: {my_number}") # Suma y Asignacion
38+
my_number -= 2
39+
print(f"my_number -= 2: {my_number}") # Resta y Asignacion
40+
my_number *= 3
41+
print(f"my_number *= 3: {my_number}") # Multiplicar y Asignacion
42+
my_number /= 4
43+
print(f"my_number /= 4: {my_number}") # Divide y Asignacion
44+
my_number //= 2
45+
print(f"my_number //= 2: {my_number}") # Divide entera y Asignacion
46+
my_number %= 3
47+
print(f"my_number %= 3: {my_number}") # Modulo y Asignacion
48+
my_number **= 2
49+
print(f"my_number **= 2: {my_number}") # Exponencial y Asignacion
50+
51+
# Operadores de identidad
52+
print("\nOperadores de identidad:")
53+
my_new_number = my_number
54+
print(f"my_number is my_new_number : {my_number is my_new_number}")
55+
print(f"my_number is not my_new_number : {my_number is not my_new_number}")
56+
57+
58+
# Operadores de pertenencia
59+
print("\nOperadores de pertenencia:")
60+
print(f"'a' in 'joandevpy' : {'a' in 'joandevpy'}")
61+
print(f"'a' not in 'joandevpy' : {'a' not in 'joandevpy'}")
62+
63+
64+
# Operadores de bits
65+
print("\nOperadores de bits:")
66+
c = 10 # 1010
67+
d = 3 # 0011
68+
print(f"c & d : {c & d}") # AND bit a bit
69+
print(f"c | d : {c | d}") # OR bit a bit
70+
print(f"c ^ d : {c ^ d}") # XOR bit a bit
71+
print(f"~c : {~c}") # NOT bit a bit
72+
print(f"c << 1 : {c << 2}") # Desplazamiento a la izquierda
73+
print(f"c >> 1 : {c >> 1}") # Desplazamiento a la derecha
74+
75+
76+
"""
77+
Estructuras de control
78+
"""
79+
80+
# Condicionales
81+
82+
print("\nCondicionales:")
83+
84+
my_string = "joandevpyy"
85+
86+
if my_string == "joandevpy":
87+
print("my_string es joandevpy")
88+
elif my_string == "Joan":
89+
print("my_string es Joan")
90+
else:
91+
print("my_string no es joandevpy ni Joan")
92+
93+
# Bucles for o Iterativas
94+
print("\nBucles for o iterativas:")
95+
for i in range(11): # el ultimo numero no se imprime seria hasta el 10
96+
print(i)
97+
98+
# Bucles while siempre se ejecuta mientras sea True (Bucle Infinito)
99+
print("\nBucles while:")
100+
i = 0
101+
while i < 5:
102+
print(f"Contador en {i}")
103+
i += 1
104+
105+
# Excepciones
106+
print("\nExcepciones:")
107+
try:
108+
resultado = 10 / 0
109+
print(f"El resultados es: {resultado}")
110+
except ZeroDivisionError:
111+
print("Error: División por cero")
112+
finally:
113+
print("Ha finalizado el manejo de excepciones")
114+
115+
116+
# Dificultad extra
117+
print("\nNúmeros entre 10 y 55, pares, que no son ni el 16 ni múltiplos de 3:")
118+
for number in range(10, 56):
119+
if number % 2 == 0 and number != 16 and number % 3 != 0:
120+
print(number)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
# Funciones definidas
2+
3+
# Función simple sin parámetros ni retorno
4+
def saludo():
5+
print("Hola, Mundo!")
6+
7+
saludo()
8+
9+
# Función con un argumento
10+
def saludar(nombre):
11+
print(f"Hola, {nombre}!")
12+
13+
# Ejecución de las funciones básicas
14+
saludo() # Vuelve a llamar a la función sin parámetros
15+
saludar("Python") # Llama a la función con un argumento
16+
17+
# Función con retorno
18+
def return_saludar():
19+
return "Hola Python!"
20+
21+
print(return_saludar()) # Imprime el valor retornado por la función
22+
23+
# Función con varios argumentos y sin retorno
24+
def saludos(saludo, nombre):
25+
print(f"{saludo}, {nombre}")
26+
27+
saludos("Hi", "Joan") # Los argumentos se pasan en orden
28+
saludos(nombre="Joan", saludo="Hi") # Argumentos pasados por nombre
29+
30+
# Función con un argumento con valor por defecto
31+
def default_saludar(nombre="Python"):
32+
print(f"Hola, {nombre}!")
33+
34+
default_saludar("Joan") # Llama a la función con argumento
35+
default_saludar() # Llama a la función sin argumentos, usando el valor por defecto
36+
37+
# Función con retorno de varios valores
38+
def multiple_default_saludar():
39+
return "Hola", "Python"
40+
41+
# Asignación de múltiples valores retornados por la función
42+
saludo, nombre = multiple_default_saludar()
43+
print(saludo)
44+
print(nombre)
45+
46+
# Función dentro de una función
47+
def operacion():
48+
def resta(a, b):
49+
return a - b
50+
print(f"La resta de 10 y 5 es: {resta(10, 5)}")
51+
52+
operacion() # Llama a la función que contiene otra función
53+
54+
# Función con un número variable de argumentos
55+
def variable_arg_saludo(*nombres): # El * significa que se le pueden pasar varios argumentos
56+
for nombre in nombres:
57+
print(f"Hola, {nombre}")
58+
59+
variable_arg_saludo("Joan", "Python", "Comunidad") # Llama a la función con múltiples argumentos
60+
61+
# Función con un número variable de argumentos con palabra clave
62+
def variable_key_arg_saludo(**nombres):
63+
for key, value in nombres.items():
64+
print(f"{value} ({key})")
65+
66+
variable_key_arg_saludo(
67+
lenguaje="Python",
68+
nombre="Joan",
69+
alias="Joandevpy",
70+
edad=34
71+
)
72+
73+
# Función dentro de una función
74+
def otra_operacion():
75+
def interna_operacion():
76+
print(f"Funcion interna: Hola, Python")
77+
interna_operacion()
78+
79+
otra_operacion() # Llama a la función que contiene una función interna
80+
81+
# Uso de funciones incorporadas (Built-in)
82+
print(len("joandevpy")) # Imprime la longitud de la cadena
83+
print(type(35)) # Imprime el tipo de la variable
84+
print("joandevpy".upper()) # Convierte la cadena a mayúsculas
85+
86+
# Variables locales y globales
87+
global_variable = "Soy una variable global"
88+
89+
print(global_variable) # Imprime la variable global
90+
91+
def prueba_variables():
92+
local_variable = "Esto sería" # Esta variable solo existe dentro de la función
93+
print(f"{local_variable}, {global_variable}") # Imprime las variables local y global
94+
95+
prueba_variables()
96+
print(global_variable) # Imprime la variable global
97+
98+
# Función que recibe dos parámetros de tipo cadena de texto y retorna un número
99+
def print_numbers(text_1, text_2) -> int:
100+
count = 0 # Inicializar el contador
101+
for number in range(1, 101):
102+
if number % 3 == 0 and number % 5 == 0:
103+
print(text_1 + text_2)
104+
elif number % 3 == 0:
105+
print(text_1)
106+
elif number % 5 == 0:
107+
print(text_2)
108+
else:
109+
print(number)
110+
count += 1
111+
return count
112+
113+
# Llamar a la función
114+
print(print_numbers("Fizz", "Buzz"))

0 commit comments

Comments
 (0)