Skip to content

Commit 302de81

Browse files
" reconfig y prueba pr cadenas"
1 parent c93bb9b commit 302de81

File tree

1 file changed

+149
-0
lines changed

1 file changed

+149
-0
lines changed
Lines changed: 149 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,149 @@
1+
### cadena de caracteres ###
2+
3+
#operaciones:
4+
my_string = "hola, "
5+
my_other_string = "Python!"
6+
7+
#concatenación:
8+
9+
my_add_string = my_string + my_other_string
10+
print(my_add_string)
11+
#tambien se pueden concatenar variables con caracteres, espacios, etc.
12+
print(my_string + " " + my_other_string + "!" )
13+
14+
# repetición o multiplicación:
15+
16+
print(my_add_string * 2)
17+
18+
#indexación o desempaquetado
19+
20+
my_string = "Python"
21+
print(my_string[1])
22+
23+
###Funciones del sistema###
24+
25+
#longitud de la cadena de texto
26+
27+
my_length = len(my_string)
28+
print(my_length)
29+
30+
#Slicing (porción)
31+
32+
print(my_add_string[6:-1])# la opción sin colocar nada en el segundo indice tambien es válido
33+
print(my_add_string[6:])
34+
print(my_add_string[::-1]) # invierte la palabra al imprimirla desde el final al principio.
35+
36+
#busqueda
37+
38+
print("Py" in my_add_string)
39+
40+
#Metodo
41+
#reemplazo:
42+
43+
print(my_string.replace("o", "a"))
44+
45+
#division:
46+
print(my_add_string.split(" "))
47+
48+
# mayusculas y minusculas
49+
50+
print(my_add_string.capitalize())#convierte a mayuscula la primer letra de la cadena de texto a mayusculas
51+
print(my_add_string.title())#convierte la primera letra de cada palabra de la cadena de texto a mayusculas
52+
print(my_string.upper())#convierte todas las letras a mayusculas
53+
print(my_string.lower())#convierte todas las letras a minusculas
54+
55+
#eliminacion de espacios al principio y final de la cadena de texto
56+
57+
print(my_add_string.strip())
58+
59+
#busqueda al principio o final
60+
print(my_string.startswith("ho"))
61+
print(my_string.endswith("a"))
62+
63+
#busqueda de posición
64+
65+
print(my_add_string.find("thon"))
66+
67+
#busqueda de ocurrencia o conteo
68+
69+
print(my_add_string.count("o"))
70+
71+
#formateo
72+
73+
print("Saludo: {}, lenguaje: {}".format(my_string, my_other_string))
74+
75+
#interpolación: f string (interpretará que todo lo que esta entre{} hace referencia a una variable)
76+
77+
print(f"saludo: {my_string} lenguaje: {my_other_string}")
78+
79+
#tranformacion en lista de caracteres:
80+
print(list(my_add_string))
81+
82+
#transformación metodo join
83+
print(" ".join(my_add_string))
84+
85+
86+
87+
###Extra###
88+
89+
#quitar espacios y pasar a minusculas: ok
90+
def limpiar_palabra (word:str)-> str:
91+
return word.replace(" ", "").lower()
92+
93+
#función palindromo:
94+
def check_palindromo(word:str)-> bool:
95+
clean_word = limpiar_palabra(word)
96+
invert_word = clean_word[::-1] # invierte la palabra utilizando slicing:
97+
return clean_word == invert_word #comprobación
98+
99+
#función anagrama: con retorno
100+
def check_anagrama(word_1:str, word_2:str)-> bool:
101+
clean_word_1 = limpiar_palabra(word_1)
102+
clean_word_2 = limpiar_palabra(word_2)
103+
104+
#comprobación:
105+
return sorted(clean_word_1) == sorted(clean_word_2)
106+
107+
108+
#funcion isograma:con conteo
109+
def check_isograma(word):
110+
for i in word:
111+
conteo = word.count(i)
112+
if conteo != 1:
113+
return False
114+
return True
115+
116+
117+
118+
### main:###
119+
word_1 = input("ingrese una palabra\n")
120+
word_2 = input("ingrese otra palabra\n")
121+
122+
#comprobación palindromo:
123+
res_pal = check_palindromo(word_1)
124+
print(f"la palabra {word_1} {'es ' if res_pal else 'no es '} palindromo ")
125+
res_pal = check_palindromo(word_2)
126+
print(f"la palabra {word_2} {'es ' if res_pal else 'no es '} palindromo ")
127+
128+
#comprobación anagrama:
129+
res_ana = check_anagrama(word_1, word_2)
130+
print(f"la palabra {word_1} y {word_2} {'son' if res_ana else 'no son '} anagramas.")
131+
132+
#comprobación isograma:
133+
res_isograma= check_isograma(word_1)
134+
print(f"la palabra {word_1} {'es ' if res_isograma else 'no es '} isograma ")
135+
res_isograma= check_isograma(word_2)
136+
print(f"la palabra {word_2} {'es ' if res_isograma else 'no es '} isograma ")
137+
138+
139+
140+
"""
141+
#Notas de lo aprendido:
142+
1) se debe llamar a la función por cada palabra a ser analizada
143+
2) para retotno booleano no es necesario utilizar comprobación if/else
144+
3) operadores ternario if/else se pueden utilizar en un f-string para decidir qué texto incluir basado en una condición.
145+
4) iograma: otra forma es convertir los elementos de la "palabra" ingresada en un set y comparar la longitud (cantidad de elementos)
146+
entre "palabra" original y set(palabra). len(palabra)==len(set(palabra))
147+
5) un set guarda sólo los elementos únicos (sin repeticiones) eje: set(palabra)-> len(p,l,a,b,r) -> 5 elementos
148+
mientras que len(palabra) -> 7 elemntos
149+
"""

0 commit comments

Comments
 (0)