Solución al Ejercicio: Contiene todo el alfabeto español
📋 Copiar código
def contiene_todo_alfabeto_es(texto):
"""
Valida si una cadena de texto contiene todas las letras del alfabeto español
(a-z y ñ), ignorando mayúsculas y minúsculas.
Args:
texto: La cadena de texto de entrada.
Returns:
True si la cadena contiene todas las letras del alfabeto español, False en caso contrario.
"""
alfabeto_es = set("abcdefghijklmnñopqrstuvwxyz")
letras_en_texto = set(texto.lower())
return alfabeto_es.issubset(letras_en_texto)
# Ejemplos de uso
texto1 = "El veloz murciélago hindú comía feliz cardillo y kiwi."
resultado1 = contiene_todo_alfabeto_es(texto1)
print(f"'{texto1}' contiene todo el alfabeto español: {resultado1}")
texto2 = "abcdefghijklmnñopqrstuvwxyz"
resultado2 = contiene_todo_alfabeto_es(texto2)
print(f"'{texto2}' contiene todo el alfabeto español: {resultado2}")
texto3 = "AbCdEfGhIjKlMnÑoPqRsTuVwXyZ"
resultado3 = contiene_todo_alfabeto_es(texto3)
print(f"'{texto3}' contiene todo el alfabeto español: {resultado3}")
texto4 = "Esta frase no contiene todas las letras."
resultado4 = contiene_todo_alfabeto_es(texto4)
print(f"'{texto4}' contiene todo el alfabeto español: {resultado4}")
texto5 = ""
resultado5 = contiene_todo_alfabeto_es(texto5)
print(f"'' contiene todo el alfabeto español: {resultado5}")
texto6 = "El pingüino come kiwi."
resultado6 = contiene_todo_alfabeto_es(texto6)
print(f"'{texto6}' contiene todo el alfabeto español: {resultado6}")
Explicación del Código:
-
def
contiene_todo_alfabeto_es(texto):
:
- Define una función llamada
contiene_todo_alfabeto_es
que toma una cadena de texto (texto
)
como entrada.
-
alfabeto_es = set("abcdefghijklmnñopqrstuvwxyz")
:
- Crea un conjunto (
set
)
llamado alfabeto_es
que contiene todas las letras del
alfabeto español en minúsculas. Los conjuntos son útiles para realizar
operaciones de pertenencia y subconjuntos de manera eficiente.
-
letras_en_texto =
set(texto.lower())
:
- Convierte el
texto
de
entrada a minúsculas usando .lower()
y luego crea un
conjunto (set
) llamado letras_en_texto
que
contiene todas las letras únicas presentes en el texto (en minúsculas).
-
return
alfabeto_es.issubset(letras_en_texto)
:
- Utiliza el método
.issubset()
para verificar si el conjunto alfabeto_es
es un subconjunto
del conjunto letras_en_texto
.
- Si
alfabeto_es
es un
subconjunto de letras_en_texto
, significa que todas las
letras del alfabeto español están presentes al menos una vez en el texto
(ignorando la capitalización), y la función devuelve True
.
- De lo contrario, si alguna letra del
alfabeto español no está presente en el texto, la función devuelve
False
.
Ejemplos de Uso:
Los ejemplos muestran cómo la función verifica
si diferentes cadenas contienen todas las letras del alfabeto español. El primer
ejemplo es un pangrama conocido en español y debería devolver True
.