Comprobando múltiples valores para una variable

original = raw_input('Enter a word:') if len(original) > 0 and original.isalpha(): word = original.lower() first = str(word)[0] print first if str(first) == "a" or "e" or "i" or "u" or "o": print "vowel" else: print "consonant" 

Quiero comprobar si una palabra comienza con una vocal o una consonante. Sin embargo, esta parte no funciona: si str(first) == "a" or "e" or "i" or "u" or "o"

Entonces, ¿cómo verificarías si la primera letra es “a” o “e” o “i” o “u” o “o”?

Mejor uso in

  if len(original) and original.isalpha(): word = original.lower() first = word[0] print first if first in ('a','e','i','o','u'): print "vowel" else: print "consonant" 

También lo estás haciendo mal, si estás tratando de usar la cláusula OR, debes usarlo así, PERO no es la mejor forma pythonica:

  if first =='a' or first =='e' or first =='i' or first =='o' or first =='u': 
 if str(first) == "a" or "e" or "i" or "u" or "o": 

debe modificarse a

 if str(first) in ("a", "e", "i", "o", "u"): 

Python tiene una demanda explícita de sangría. Asegúrate de tener una sangría correcta.

 original = raw_input('Enter a word:') if len(original) > 0 and original.isalpha(): word = original.lower() first = str(word)[0] print first if str(first) in ("a", "e", "i", "o", "u"): print "vowel" else: print "consonant"