Skip to content

Commit b0e7a8e

Browse files
authored
Merge pull request #8310 from yah1r404/reto04
#4 - Python
2 parents 31e22ee + bf657d2 commit b0e7a8e

File tree

1 file changed

+148
-0
lines changed

1 file changed

+148
-0
lines changed
Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
"""
2+
OPERACIONES
3+
"""
4+
5+
text1 = "Hola"
6+
text2 = "Python"
7+
8+
# CONCATENACIÓN
9+
10+
print(text1 + ", " + text2 + "!")
11+
12+
# REPETICIÓN
13+
14+
print(text1 * 5)
15+
16+
# INDEXACIÓN
17+
18+
print(text1[0] + text1[1] + text1[2] + text1[3])
19+
20+
# LONGITUD
21+
22+
print(len(text2))
23+
24+
# SLICING (PORCIÓN)
25+
26+
print(text2[2:6])
27+
print(text2[2:])
28+
print(text2[0:2])
29+
print(text2[:2])
30+
31+
# BÚSQUEDA
32+
33+
print("a" in text1)
34+
print("m" in text1)
35+
36+
# REEMPLAZO
37+
38+
print(text1.replace("o", "a"))
39+
40+
# DIVISIÓN
41+
42+
print(text2.split("t"))
43+
44+
# MAYÚSCULAS Y MINÚSCULAS
45+
46+
print(text1.upper())
47+
print(text2.lower())
48+
print("yahir sulu".title())
49+
print("yahir sulu".capitalize())
50+
51+
# QUITAR ESPACIOS
52+
53+
print(" yahir sulu ".strip())
54+
55+
# BÚSQUEDA AL PRINCIPIO Y AL FINAL
56+
57+
print(text1.startswith("Ho"))
58+
print(text1.startswith("Py"))
59+
print(text1.endswith("la"))
60+
print(text1.endswith("thon"))
61+
62+
name = "Yahir sulu @yahir404."
63+
64+
# BÚSQUEDA DE POSICIÓN
65+
66+
print(name.find("yahir"))
67+
print(name.find("Yahir"))
68+
print(name.find("y"))
69+
print(name.lower().find("y"))
70+
71+
# BÚSQUEDA DE OCURRENCIAS
72+
73+
print(name.lower().count("u"))
74+
75+
# FORMATEO
76+
77+
print("Saludo: {}, Lenguaje: {}!".format(text1, text2))
78+
79+
# INTERPOLACIÓN
80+
81+
print(f"Saludo: {text1}, Lenguaje: {text2}!")
82+
83+
# TRANSFORMACIÓN EN LISTA DE CARÁCTERES
84+
85+
print(list(name))
86+
87+
# TRANSFORMACIÓN DE LISTA EN CADENA
88+
89+
lista1 = [text1, ", ", text2, "!"]
90+
print("-".join(lista1))
91+
92+
# TRANSFORMACIÓN NUMÉRICA
93+
94+
num = "12345"
95+
num = int(num)
96+
print(num)
97+
98+
num1 = "12345.54321"
99+
num1 = float(num1)
100+
print(num1)
101+
102+
103+
# COMPROBACIONES VARIAS
104+
105+
print(text1.isalnum())
106+
print(text1.isalpha())
107+
print(text1.isnumeric())
108+
109+
"""
110+
EXTRA TASK
111+
"""
112+
113+
def analizar_palabras(palabra1, palabra2):
114+
115+
# Palíndromo: se lee igual al derecho y al revés
116+
print(f"{palabra1} es palíndromo:", palabra1 == palabra1[::-1])
117+
print(f"{palabra2} es palíndromo:", palabra2 == palabra2[::-1])
118+
119+
# Anagrama: tienen las mismas letras, orden diferente
120+
print("Son anagramas:", sorted(palabra1) == sorted(palabra2))
121+
122+
def isogram(word: str) -> bool:
123+
# Creamos un diccionario para contar las apariciones de cada letra
124+
word_dict = dict()
125+
126+
for character in word:
127+
word_dict[character] = word_dict.get(character, 0) + 1
128+
129+
# Obtenemos la lista de cuántas veces aparece cada letra
130+
values = list(word_dict.values())
131+
132+
# Tomamos el valor de repetición de la primera letra
133+
isogram_len = values[0]
134+
isogram = True
135+
136+
# Comparamos todas las repeticiones con la primera
137+
for word_count in values:
138+
if word_count != isogram_len:
139+
isogram = False
140+
break
141+
142+
return isogram
143+
# Ejemplos:
144+
print("¿'aabbcc' es isograma?", isogram("aabbcc")) # True
145+
print("¿'aabc' es isograma?", isogram("aabc")) # False
146+
print("¿'abab' es isograma?", isogram("abab")) # True
147+
148+
analizar_palabras("amor", "roma")

0 commit comments

Comments
 (0)