Python 无法解决这个小错误。代码如下。Karen对输入没有反应

Python 无法解决这个小错误。代码如下。Karen对输入没有反应,python,Python,Karen没有响应用户输入。我做错了什么 def menu1(): main = 'True' hello = 'Hi!' status = 'How are you?' print ('>> Hello! My name is Karen, you can ask me anything you want!') while main == 'True': karen = input(">> Talk to Kare

Karen没有响应用户输入。我做错了什么

def menu1():
    main = 'True'
    hello = 'Hi!'
    status = 'How are you?'
    print ('>> Hello! My name is Karen, you can ask me anything you want!')
    while main == 'True':
        karen = input(">> Talk to Karen: ")
    if karen == hello:
        print (">> Hi there!")
    elif karen == status:
        print (">> I'm fine, what about you?")
    else:
        print (">> I don't think I understand.")

def menu2():
    print ('>> menu2')

def menu3():
    print ('>> menu3')

def menu4():
    print ('>> Goodbye!')
    sys.exit

ans = True
while ans:
    print ('\n>> --- MENU --- <<')
    print("""
    >> 1. AI Karen - Beta
    >> 2. Menu 2 - Soon
    >> 3. Menu 3 - Soon
    >> 4. Exit
    """)
    ans=input(">> Select an option: ")
    if ans=="1":
        menu1()
    elif ans=="2":
        menu2()
    elif ans=="3":
        menu3()
    elif ans=="4":
        menu4()
        ans = None
    else:
        print(">> That is not an option!")

谢谢

while循环的条件始终为true,因此在输入将main设置为false之后,它将无限期地在输入上循环,这样它就可以工作了

while main == 'True':
    karen = input(">> Talk to Karen: ")
    main = False

我的猜测是:如果karen==hello:那么下面的行需要缩进以成为while循环的一部分。目前,您有一个无休止的循环,只要求用户提供新的输入,而不做任何其他操作。请添加您正在尝试执行的操作。如果这解决了您的问题,请选择此作为正确答案。非常感谢。