Python 循环-不会重新开始,只会弹出一个字符串

Python 循环-不会重新开始,只会弹出一个字符串,python,loops,python-3.3,Python,Loops,Python 3.3,所以我试图让循环与一个程序一起工作(PygLatin的代码学院学分)。 我尝试过各种“break”和其他语法,但都没有成功。我想要循环做的是从输入(第4行)重新开始。到目前为止,我使用PygLatin=False成功地停止了循环,但没有重新开始。正如您在最后一行中看到的,我编写了PygLatin=True,但这只会发出“不是字符串”。任何帮助都将不胜感激 pyg = 'ay' print("Welcome to PygLatin!") original = input('Enter a wor

所以我试图让循环与一个程序一起工作(PygLatin的代码学院学分)。 我尝试过各种“break”和其他语法,但都没有成功。我想要循环做的是从输入(第4行)重新开始。到目前为止,我使用
PygLatin=False
成功地停止了循环,但没有重新开始。正如您在最后一行中看到的,我编写了
PygLatin=True
,但这只会发出
“不是字符串”
。任何帮助都将不胜感激

pyg = 'ay'

print("Welcome to PygLatin!")
original = input('Enter a word: ')      #Asks user to enter a word

PygLatin = True
while PygLatin:
    if len(original) > 0 and original.isalpha():    
        word = original.lower()                     
        first = word[0]                         

        if first in ["a","e","i","o","u"]:   
            new_word = word + pyg               
            print(new_word)
            PygLatin = False
        else:                    
            new_word = word[1:] + word[0] + pyg     
            print(new_word)
            PygLatin = False                                           
    else:
        print('Error: Not a string!')                
        PygLatin = True

您还需要在
输入上循环:

while True:
    original = input(...)
    PygLatin = True
    while PygLatin:
        if len(original) > 0 and original.isalpha():
            ...
        else:
            print('Error: Not a string!')
    ui = input("Try again? (y/n): ").lower()
    if ui not in ("y", "yes"):
        break
这将每次询问用户是否希望再次循环