在我提出这个问题之前,我想告诉你我不是一个经验丰富的程序员,而是有人在codecademy.com上学习python的基础知识。
我正在尝试使用python编写一个函数来检查给定单词的第一个字母,例如“ball”是否为大写或小写的元音。例如:
#here is a variable containing a word:
my_word = "Acrobat"
#letters in vowel as a list
the_vowel = ["a","e","i","o","u"]
如何检查“Acrobat”中的第一个字母是否是列表中的元音之一?我还需要考虑它是大写还是小写?
答案 0 :(得分:15)
尝试my_word[0].lower() in the_vowel
答案 1 :(得分:11)
我不知道它是否比这里已经发布的答案更好,但你也可以这样做:
vowels = ('a','e','i','o','u','A','E','I','O','U')
myWord.startswith(vowels)
答案 2 :(得分:9)
以下是一些可以帮助您解决问题的提示。
从字符串下标中获取单个字母。
>>> 'abcd'[2]
'c'
请注意,第一个字符是字符零,第二个字符是字符1,依此类推。
接下来要注意的是大写字母与小写字母不相等:
>>> 'a' == 'A'
False
幸运的是,python字符串有方法upper
和lower
来改变字符串的大小写:
>>> 'abc'.upper()
'ABC'
>>> 'a' == 'A'.lower()
True
要测试列表中的成员身份in
:
>>> 3 in [1, 2, 3]
True
>>> 8 in [1, 2, 3]
False
因此,为了解决您的问题,请将订阅绑定到一个字母upper
/ lower
以调整大小写,并使用in
测试成员资格。
答案 3 :(得分:4)
my_word = "Acrobat"
the_vowel = "aeiou"
if myword[0].lower() in the_vowel:
print('1st letter is a vowel')
else:
print('Not vowel')
答案 4 :(得分:2)
我的代码看起来像这样。
original = raw_input("Enter a word:")
word = original.lower()
first = word[0]
vowel = "aeiou"
if len(original) > 0 and original.isalpha():
if first in vowel:
print word
print first
print "vowel!"
else:
print word
print first
print "consonant
答案 5 :(得分:2)
x = (input ("Enter any word: "))
vowel = "aeiouAEIOU"
if x[0] in vowel:
print ("1st letter is vowel: ",x)
else:
print ("1st letter is consonant: ",x)
答案 6 :(得分:1)
感谢alexvassel为我提供了缺失的部分;)
所以这里是codecadmy.com上的exercice的解决方案
original = raw_input('Enter a word:')
word = original.lower()
first = word[0]
vowel = "aeiou"
if len(original) > 0 and original.isalpha():
if first in vowel:
print 'vowel'
else:
print 'consonant'
else:
print 'empty'
答案 7 :(得分:1)
这是我如何做到的,因为在将输入的单词存储为变量之前需要先检查输入的单词:
original = raw_input('Enter a word:')
if len(original) > 0 and original.isalpha():
word = original.lower()
first = word[0]
if first in ['a','e','i','o','u']:
print "vowel"
else:
print "consonant"
else:
print 'empty'
答案 8 :(得分:1)
import ast,sys
input_str = sys.stdin.read()
if input_str[0] in ['a','e','i','o','u','A','E','I','O','U']:
print('YES')
else:
print('NO')
答案 9 :(得分:0)
将the_vowel定义为字典而不是列表会不会(稍微)快一些?
the_vowel = {"a":1,"e":1,"i":1,"o":1,"u":1}
my_word[0].lower() in the_vowel
答案 10 :(得分:0)
反元音功能
def anti_vowel(text):
vowel = ["a","e","i","o","u"]
new_text = ''
for char in text:
if char.lower() in vowel:
continue
else:
new_text += char
print new_text
return new_text
答案 11 :(得分:0)
x = raw_input("Enter a word: ")
vowels=['a','e','i','o','u']
for vowel in vowels:
if vowel in x:
print "Vowels"
else:
print "No vowels"
这将打印出5行,如果其中任何一行包含一条说明元音的行,那就意味着有一个元音。我知道这不是最好的方式,但它有效。
答案 12 :(得分:0)
更改:
if my_word[0] in ('a','e','i','o','u'):
print(' Yes, the first letter is vowel ')
else:
print(' No, the first letter is not vowel ')
因此,这是用于找出第一个字母不是元音的简单代码!如果您在python或js中有任何其他查询,请将其注释掉。
答案 13 :(得分:0)
让我们以更简单的方式进行操作
def check_vowel(s1):
v=['a','e','i','o','u']
for i in v:
if s1[0].lower()==i:
return (f'{s1} start with Vowel word {i}')
else:
return (f" {s1} start with Consonants word {s1[0]}")
print(check_vowel("orange"))
答案 14 :(得分:-1)
my_word = "Acrobat"
the_vowel = ["a", "e", "i", "o", "u"]
if my_word[0].lower() in the_vowel:
print(my_word + " starts with a vowel")
else:
print(my_word + " doesnt start with a vowel")