如何在 if 语句中检查 raw_input 个答案

How to check raw_input answers inside if-statements

很抱歉,这可能是一个愚蠢的问题,但我才刚刚开始学习编码 Python,并且我正在尝试制作一款游戏来检查用户的某些输入。然而,脚本不接受正确答案和 运行 下一个函数。

def left2():
    x = 5 + 5  


def left():
    x = raw_input("What is Dwyane's last name?")  
    x = x.lower # changes to the lowercase version of the name 

    if x == 'johnson':  # Code stopping here, It's not recognizing the input
        left2()
    elif x == "":
        left2()
    else:
        print "You're lost!" # This is displayed regardless of what I type

您正在将 x 分配给函数对象,而不是作为结果返回的字符串。

代码应该是:

x = x.lower()

我认为问题出在 left() 的第二行,应该是:

x = x.lower() # changes to the lowercase version of the name 

括号调用 x 上的 lower 方法并将 returns 的内容重新分配给 x,而不仅仅是将 x 设置为可调用方法本身。