2013-04-06 72 views
1
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" 

我想检查一个单词是否以元音或辅音开头。但是,这部分不起作用:如果str(first) == "a" or "e" or "i" or "u" or "o"检查变量的多个值

那么如何检查第一个字母是“a”还是“e”或“i”或“u”或“o”?

+0

由于某种原因,每天至少要三次,仍然没有人找到一个副本。 – 2017-11-28 10:29:29

回答

2

您更好地使用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" 

你也做错了,如果你要使用OR子句中,必须使用类似这样的,但它不是更好的Python的方式:

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

应该moditied到

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

Python对缩进有明确的要求。确保你有一个正确的缩进。

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"