Skip to content

Commit a57ad75

Browse files
authored
Merge pull request #6319 from Ipfabio/main
#1 - Python #2 - Python
2 parents 4720aa6 + 588c6fc commit a57ad75

File tree

2 files changed

+252
-0
lines changed
  • Roadmap

2 files changed

+252
-0
lines changed
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
"""
2+
Aritméticos: + - * / //
3+
"""
4+
# Pide al usuario que ingrese 2 números y los asigna a las variables ´a' y 'b', con map les aplicamos a ambos la función int() para convertirlos en enteros y poder operarlos. (por default recibidos en string, por eso se parsea/convierte)
5+
a, b = map(int, input("Ingresa 2 valores para los ejemplos de Operadores Aritméticos separados por espacio (Ej: 5 1): ").split())
6+
7+
# Realizamos las operaciones.
8+
suma = a + b
9+
resta = a - b
10+
multiplicacion = a * b
11+
division = a / b
12+
division_entera = a // b
13+
modulo = a % b
14+
exponente = a ** b
15+
16+
# Imprimimos las operaciones mostrando un ejemplo de como se realiza con los valores 'a' y 'b'.
17+
print(f"Suma: {a} + {b} = {suma}")
18+
print(f"Resta: {a} - {b} = {resta}")
19+
print(f"Multiplicación: {a} * {b} = {multiplicacion}")
20+
print(f"División: {a} / {b} = {division}")
21+
print(f"Módulo: {a} % {b} = {modulo}")
22+
print(f"Exponente: {a}**{b} = {exponente}")
23+
print(f"Division entera: {a} // {b} = {division_entera}")
24+
25+
# Operadores de comparación
26+
a, b = map(int, input("Ingresa dos valores para los ejemplos de Operadores de comparación separados por espacio (Ej: 10 3): ").split())
27+
28+
igual = a == b
29+
distinto = a != b
30+
mayor_que = a > b
31+
menor_que = a < b
32+
mayor_igual = a >= b
33+
menor_igual = a <= b
34+
35+
print(f"Igualdad: {a} == {b} = {igual}")
36+
print(f"Distintos: {a} != {b} = {distinto}")
37+
print(f"Mayor que: {a} > {b} = {mayor_que}")
38+
print(f"Menor que: {a} < {b} = {menor_que}")
39+
print(f"Mayor o igual: {a} >= {b} = {mayor_igual}")
40+
print(f"Menor o igual: {a}<={b} = {menor_igual}")
41+
42+
# Operadores Lógicos
43+
a,b = map(int, input("Ingresa los primeros dos valores separados por un espacio (Ej: 10 3): ").split())
44+
c,d = map(int, input("Ingresa los otros dos valores a comprobar formato similar al anterior (Ej: 5 1): ").split())
45+
46+
# Verdadero Ambos
47+
print(f"AND &&: {a} + {b} == {a + b} and {c} - {d} == {c - d} es: {a + b == a + b and c - d == c - d}")
48+
# Verdadero Uno u Otro
49+
print(f"OR ||: {a} + {b} == {a + b} or {d} - {c} == {d - c} es: {a + b == a + b or c - d == d - c}")
50+
# No es
51+
print(f"NOT !: NOT {d} - {c} == {c - d} es: {not c - d == d - c}")
52+
53+
# Operadores de asignación
54+
my_number = 11 # Asignación
55+
print(f"Base: {my_number}")
56+
my_number += 1 # Suma y asignación
57+
print(f"Suma y asignacion += 1 {my_number}")
58+
my_number -= 1 # Suma y asignación
59+
print(f"Resta y asignacion -= 1 {my_number}")
60+
my_number *= 2 # Suma y asignación
61+
print(f"Multiplicación y asignacion *= 2 {my_number}")
62+
my_number /=2 # Suma y asignación
63+
print(f"División y asignacion /= 1 {my_number}")
64+
my_number %= 2 # Suma y asignación
65+
print(f"Módulo y asignacion %= 2 {my_number}")
66+
my_number **= 1 # Suma y asignación
67+
print(f"Elevación y asignacion **= 1 {my_number}")
68+
my_number //= 1 # Suma y asignación
69+
print(f"División entera y asignacion //= 1 {my_number}")
70+
71+
# Operadores de identidad
72+
my_new_number = my_number
73+
# Compara si son iguales basandose en la posición de memoria
74+
print(f"my_number is my_new_number es: {my_number is my_new_number}")
75+
print(f"my_number is not my_new_number es: {my_number is not my_new_number}")
76+
77+
# Operadores de pertenencia
78+
print(f"'i' in 'Kirito' = {'i' in 'Kirito'} ")
79+
print(f"'u' in 'Kirito' = {'u' not in 'Kirito'} ")
80+
81+
# Operadores de bit
82+
a = 10 # 1010
83+
b = 3 # 0011
84+
85+
print(f"AND: 10 & 3 = {10 & 3}") # 0010
86+
print(f"OR: 10 | 3 = {10 | 3}") # 1011 (Si al menos 1 es 1)
87+
print(f"XOR: 10 ^ 3 = {10 ^ 3}") #1001 (Si son diferentes da 1, sino 0)
88+
print(f"XOR: ~10 = {~10}") # (Intercambia el valor bit a bit de los elementos)
89+
print(f"Desplazamiento a la derecha: 10 >> 2 = {10 >> 2}") # 10: 1010 >> 0010
90+
print(f"Desplazamiento a la derecha: 10 << 2 = {10 << 2}") # 10: 1010 >> 101000
91+
92+
"""
93+
Estructuras de control
94+
"""
95+
96+
# Condicionales
97+
98+
my_string = "Martes"
99+
100+
if my_new_number == "Martes":
101+
print("Buen Martes para todos!")
102+
elif my_string == "Miercoles":
103+
print("Buen Miercoles para todos!")
104+
else:
105+
print("Buena semana para todos!")
106+
107+
# Iterativas
108+
for i in range(11):
109+
print(i)
110+
111+
i = 0
112+
113+
while i <= 10:
114+
print(i)
115+
i += 1
116+
117+
# Manejo de excepciones
118+
try:
119+
print(10 / 1)
120+
except:
121+
print("Se ha producido un error")
122+
finally:
123+
print("Hemos terminado el manejo de excepciones")
124+
125+
# Dificultad Extra
126+
# * Crea un programa que imprima por consola todos los números comprendidos
127+
# * entre 10 y 55 (incluidos), pares, y que no son ni el 16 ni múltiplos de 3.
128+
for i in range(10,56):
129+
if i % 2 == 0 and i != 16 and i % 3 != 0:
130+
print(i)
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
"""
2+
Funciones definidas por el usuario
3+
"""
4+
5+
# Simple
6+
7+
def saludo():
8+
print("Hola, Python!")
9+
10+
saludo()
11+
12+
# Con retorno
13+
14+
def devuelve_saludo() -> str:
15+
return "Hola, Python!"
16+
17+
saludar = devuelve_saludo()
18+
print(saludar)
19+
20+
# Con un argumento
21+
def args_saludo(saludo: str, nombre: str) -> str:
22+
print(f"{saludo}, {nombre}")
23+
24+
args_saludo("Hi", "Marcos")
25+
26+
# Con un argumento predeterminado
27+
28+
def default_arg_saludo(nombre:str = "Amigo") -> str:
29+
print(f"Hola, {nombre}!")
30+
31+
default_arg_saludo("Marco")
32+
default_arg_saludo()
33+
34+
# Con argumentos y retorno
35+
36+
def return_args_saludo(saludo: str, nombre: str) -> str:
37+
return f"{saludo}, {nombre}!"
38+
39+
print(return_args_saludo("Hi", "Marcos"))
40+
41+
# Con retorno de varios valores
42+
43+
def multiple_return_saludo():
44+
return "Hola", "Python"
45+
46+
saluda, nombre = multiple_return_saludo()
47+
print(saluda)
48+
print(nombre)
49+
50+
# Con un número variable de argumentos
51+
52+
def variable_arg_greet(*names):
53+
for name in names:
54+
print(f"Hola, {name}")
55+
variable_arg_greet("Python", "Marcos", "Dibu", "Comunidad")
56+
57+
# Con un número variable de argumentos con palabra clave
58+
59+
def variable_key_arg_greet(**names):
60+
for param, name in names.items():
61+
print(f"{name} ({param})")
62+
63+
variable_key_arg_greet(language="Python",name= "Marcos",age= 21)
64+
65+
"""
66+
Funciones dentro de funciones
67+
"""
68+
69+
def outer_function():
70+
def inner_function():
71+
print("Función interna: Hola, Python!")
72+
inner_function() # Hay que llamarla para que se ejecute
73+
74+
outer_function()
75+
76+
"""
77+
Funciones del lenguaje (built-in)
78+
"""
79+
80+
print(len("Marcos"))
81+
print(type(21))
82+
print("Marcos".upper())
83+
84+
"""
85+
Varialbes locales y globales
86+
"""
87+
88+
global_var = "Python"
89+
90+
print(global_var)
91+
92+
def hello_python():
93+
local_var = "Hola"
94+
print(f"{local_var}, {global_var}")
95+
96+
97+
print(global_var)
98+
# print(local_var) No se puede acceder desde fuera de la función
99+
100+
hello_python()
101+
102+
103+
"""
104+
Extra
105+
"""
106+
107+
def extra(texto_1: str, texto_2: str) -> int:
108+
numers = 0
109+
for i in range(1, 101):
110+
if i % 3 == 0 and i % 5 == 0:
111+
print(f"{texto_1}{texto_2}")
112+
elif i % 3 == 0:
113+
print(f"{texto_1}")
114+
elif i % 5 == 0:
115+
print(f"{texto_2}")
116+
else:
117+
print(i)
118+
numers += 1
119+
120+
return f"Cantidad de numeros impresos: {numers}"
121+
122+
print(extra("Fizz", "Buzz"))

0 commit comments

Comments
 (0)