Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 猪拉丁翻译赢得';我一句话也不说_Python_Python 2.7 - Fatal编程技术网

Python 猪拉丁翻译赢得';我一句话也不说

Python 猪拉丁翻译赢得';我一句话也不说,python,python-2.7,Python,Python 2.7,嗨,我需要完成一个班的拉丁翻译。译者应该记下一个单词,如果它以元音开头,那么在末尾加上“ay”,如果它以辅音开头,那么把辅音放在后面,然后加上“ay”,它应该一直向后移动,直到碰到元音为止。例如,单词“tree”应该变成“eetray”。我不确定我在代码中的什么地方出错了,但是当我运行can时,它不会给我任何东西,所以如果我把它放在“树”中,它只会重新启动代码并再次请求一个单词。欢迎任何帮助。谢谢 vowels = "AEIOU" realLetters = "abcdefghijklmnop

嗨,我需要完成一个班的拉丁翻译。译者应该记下一个单词,如果它以元音开头,那么在末尾加上“ay”,如果它以辅音开头,那么把辅音放在后面,然后加上“ay”,它应该一直向后移动,直到碰到元音为止。例如,单词“tree”应该变成“eetray”。我不确定我在代码中的什么地方出错了,但是当我运行can时,它不会给我任何东西,所以如果我把它放在“树”中,它只会重新启动代码并再次请求一个单词。欢迎任何帮助。谢谢

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
。我已经复制了您的问题,并提出了一个解决方案:一旦您修复了缩进和语法问题,我将发布并解释如何修复它。