Python 猪拉丁翻译赢得';我一句话也不说
嗨,我需要完成一个班的拉丁翻译。译者应该记下一个单词,如果它以元音开头,那么在末尾加上“ay”,如果它以辅音开头,那么把辅音放在后面,然后加上“ay”,它应该一直向后移动,直到碰到元音为止。例如,单词“tree”应该变成“eetray”。我不确定我在代码中的什么地方出错了,但是当我运行can时,它不会给我任何东西,所以如果我把它放在“树”中,它只会重新启动代码并再次请求一个单词。欢迎任何帮助。谢谢Python 猪拉丁翻译赢得';我一句话也不说,python,python-2.7,Python,Python 2.7,嗨,我需要完成一个班的拉丁翻译。译者应该记下一个单词,如果它以元音开头,那么在末尾加上“ay”,如果它以辅音开头,那么把辅音放在后面,然后加上“ay”,它应该一直向后移动,直到碰到元音为止。例如,单词“tree”应该变成“eetray”。我不确定我在代码中的什么地方出错了,但是当我运行can时,它不会给我任何东西,所以如果我把它放在“树”中,它只会重新启动代码并再次请求一个单词。欢迎任何帮助。谢谢 vowels = "AEIOU" realLetters = "abcdefghijklmnop
vowels = "AEIOU"
realLetters = "abcdefghijklmnopqrstuvwxyz"
while true:
isRealWord = True
word = raw_input ("Please tell me a word to translate: ").lower()
for letter in range(len(word)):
if word[letter] in realLetters:
continue
else:
print "That is not a real word. Just leave."
isRealWord = False
if isRealWord == True:
firstLetter = word[0]
secondLetter = word[1]
thirdLetter = word[2]
pigWord0 = word + "ay"
TheRestOfTheWord = word[1:]
pigWord1 = TheRestOfTheWord + firstLetter + "ay"
TheRestOfTheWord = word[2:]
pigWord2 = TheRestOfTheWord + firstLetter + secondLetter + "ay"
TheRestOfTheWord = word[3:]
pigWord3 = TheRestOfTheWord + firstLetter + secondLetter + thirdLetter + "ay"
if pigWord0[0] in vowels:
print pigWord0.lower()
elif pigWord1[0] in vowels:
print pigWord1.lower()
elif pigWord2[0] in vowels:
print pigWord2.lower()
elif pigWord3[0] in vowels:
print pigWord3.lower()
我怀疑缩进/语法错误是SO和/或延迟复制的问题,因为我可以用固定代码复制您的失败示例: 除了
元音
列表中的所有大写字母外,所有字母都用小写字母进行比较。它需要是aeiou
,就像A
!=a
和其他所有字符都是小写的
您仍然需要修复语法,但这解决了问题。我认为您需要修复缩进。并使用适当的引号。编辑代码很明显,您实际上没有尝试运行它:使用基本语法修复,它可以正常工作。如果没有修复,它将失败并给出有用的错误:非标准字符串、错误的缩进当您的
while True:
循环中断时,您希望什么时候?它没有检查isRealWord
的值。但是,目前,这是一个名称错误,因为您没有大写True
。我已经复制了您的问题,并提出了一个解决方案:一旦您修复了缩进和语法问题,我将发布并解释如何修复它。