我目前正在使用python中的Pig Latin代码。我遇到两个错误,第一个是处理辅音。如果一个单词以两个辅音开头,则两个字母都移到最后并附加'ay': grade 变为 adegray 。
我的第二个问题是,当我尝试运行下面的代码时,语法错误无效:
{{1}}
答案 0 :(得分:0)
#Pig latin
pig= ("ay")
word = raw_input("Enter a word: ")# prompt for a phrase and assign result to a variable
vowels="aeiou" # list of vowels
words = word.split()
for i in range(len(words)):
if words[i][0] in vowels: # is first letter a vowel
print words[i] + 'way', # if first letter is a vowel, print word + 'way'
elif words[i][1] in vowels:
print words[i][1:] + word[i][0] + 'ay', # assign second letter of phrase to a string variable, for later use
else:
print words[i][2:] + words[i][0:2] + 'ay', # otherwise print word with first two letters moved to end & added 'ay'
关于我修复的内容的一些注释:
您的语法错误是由于未闭合的括号
你的for循环中有一些奇怪的东西,你在word
的某些地方有words
。
我能够使用更多的列表切片来完成处理单词以两个元音开头的情况
我在print语句的末尾添加了逗号,这样每个单词后面都没有换行符(它在一行上打印所有单词,就像它们被输入的方式一样)
input()
是我相信的数字,你想要的是raw_input()