.
Solución al Ejercicio: Autocompletar
📋 Copiar código
def autocompletar(prefijo, palabras):
"""
Simula la funcionalidad de autocompletar basándose en un prefijo.
Args:
prefijo: El prefijo de búsqueda (cadena).
palabras: Una lista de palabras posibles.
Returns:
Una lista de palabras que comienzan con el prefijo (ignorando capitalización).
"""
sugerencias = []
prefijo_lower = prefijo.lower()
for palabra in palabras:
palabra_lower = palabra.lower()
if palabra_lower.startswith(prefijo_lower):
sugerencias.append(palabra)
return sugerencias
# Ejemplos de uso
lista_palabras = ["Hola", "Mundo", "Helado", "Hamaca", "Hombre", "Mapa"]
prefijo1 = "Ho"
sugerencias1 = autocompletar(prefijo1, lista_palabras)
print(f"Sugerencias para '{prefijo1}': {sugerencias1}")
prefijo2 = "m"
sugerencias2 = autocompletar(prefijo2, lista_palabras)
print(f"Sugerencias para '{prefijo2}': {sugerencias2}")
prefijo3 = "Hel"
sugerencias3 = autocompletar(prefijo3, lista_palabras)
print(f"Sugerencias para '{prefijo3}': {sugerencias3}")
prefijo4 = "Z"
sugerencias4 = autocompletar(prefijo4, lista_palabras)
print(f"Sugerencias para '{prefijo4}': {sugerencias4}")
prefijo5 = ""
sugerencias5 = autocompletar(prefijo5, lista_palabras)
print(f"Sugerencias para '{prefijo5}': {sugerencias5}")
Explicación del Código:
-
def autocompletar(prefijo,
palabras):
:
- Define una función llamada
autocompletar
que toma un prefijo
(la cadena de
búsqueda) y una lista de palabras
como entrada.
-
sugerencias = []
:
- Inicializa una lista vacía llamada
sugerencias
para almacenar las palabras que coinciden con el
prefijo.
-
prefijo_lower = prefijo.lower()
:
- Convierte el
prefijo
a
minúsculas para realizar una comparación sin distinción de mayúsculas y
minúsculas.
-
for palabra in palabras:
:
- Itera a través de cada
palabra
en la lista de palabras
.
-
palabra_lower = palabra.lower()
:
- Convierte la
palabra
actual
a minúsculas para la comparación.
-
if
palabra_lower.startswith(prefijo_lower):
:
- Utiliza el método de cadena
startswith()
para verificar si la palabra
(en
minúsculas) comienza con el prefijo
(en minúsculas).
-
sugerencias.append(palabra)
:
- Si la palabra comienza con el prefijo, se
añade la palabra original (con su capitalización original) a la lista de
sugerencias
.
-
return sugerencias
:
- Después de revisar todas las palabras en
la lista, la función devuelve la lista de
sugerencias
.
Ejemplos de Uso:
Los ejemplos muestran cómo la función encuentra
las palabras en la lista que comienzan con los prefijos dados, ignorando la
capitalización.