为什么最后的其他声明不起作用?蟒蛇

use*_*780 0 python

对"你发烧了吗?"说"n" 输出False而不是提示我回答"你有鼻塞吗?".其他其他陈述有效.说"你"说"你发烧了吗?","n"说"你有皮疹吗?","n"说"你的耳朵受伤吗?" 打印"流感".我无法弄清楚为什么其他声明不起作用.

def part3():
    if(raw_input("Do you have a fever? (y/n): ") == "y"):
        if(raw_input("Do you have a rash? (y/n): ") == "y"):
            print "Measles"
        else:
            if(raw_input("Does your ear hurt? (y/n): ") == "y"):
                print "Ear Infection"
            else:
                print "Flu" 
    else:
        if(raw_input("Do you have a stuffy nose? (y/n): " == "y")):
            print "Head Cold"
        else:
            print "Hypochondriac"
Run Code Online (Sandbox Code Playgroud)

And*_*ant 10

我发现了你的错误,你会为此而讨厌自己.这条线

if(raw_input("Do you have a stuffy nose? (y/n): " == "y")):
Run Code Online (Sandbox Code Playgroud)

应该

if(raw_input("Do you have a stuffy nose? (y/n): ") == "y"):
Run Code Online (Sandbox Code Playgroud)

为了解释为什么它打印错误:"你有一个鼻塞吗?(是/否):"=="y"被评估为False,所以就像说raw_input(False)将打印"False" ",但仍然得到输入