El objetivo es hacer una lista del párrafo del usuario e iterar para que pueda contar cuántas palabras contienen letras especiales "j, x, q, z".
Ejemplo de entrada:
en un hoyo en el suelo, vivía un hobbit. No es un agujero desagradable, sucio y húmedo, lleno de puntas de gusanos y un olor a humedad, ni tampoco un agujero seco, desnudo y arenoso sin nada para sentarse o comer; Era un hobbit-hoyo, y eso significa comodidad.
Ejemplo de salida: 1 palabra con un carácter raro
Comencé el código donde rompo el párrafo del usuario en una lista, pero me resulta difícil iterar a través de la lista y encontrar cada instancia de las letras especiales.
Esto es lo que tengo hasta ahora:
def rareChar(words):
rareWords = 0
rareChars = ['j', 'x', 'q', 'z']
for astring in words:
wds = words.split()
for char in wds:
if char in rareChars:
rareWords = rareWords + 1
return rareWords
def CoolPara(words):
print(rareChar(words), 'word(s) with a rare character')
# DO NOT CHANGE CODE BELOW
print(CoolPara(input("Enter: ")))
Si ejecuto con la entrada de ejemplo, obtengo una salida de '0 palabra (s) con un carácter raro'. ¿Cómo podría solucionar esto para poder obtener el resultado esperado? Cualquier ayuda sería muy apreciada ya que todavía soy relativamente nuevo en la codificación.
También una nota rápida: solo se me permite usar los métodos / funciones de split () y Len ()
for astring in words:?
.indexdebería hacer el trabajo