Python初学者:检查字典中的成员资格并使用决策结构

Python初学者:检查字典中的成员资格并使用决策结构,python,typeerror,Python,Typeerror,我在编写代码时遇到了一个问题,在这个问题上,我试图使用基于用户输入是否在字典中找到的if语句。例如,假设用户希望在通讯簿中查找姓名,我将他们的响应保存到变量“findName”,该变量是字典的键。我们也可以说字典名是“contact” 问题是,每次执行此操作时,都会收到一条错误消息:“内置函数”或“方法”对象没有属性“getitem” 我真的不知道我的代码哪里出错了,有人能告诉我正确的答案和解释吗 您有语法错误。elif后面不应该有冒号,has_key是一种方法: if contact.has_

我在编写代码时遇到了一个问题,在这个问题上,我试图使用基于用户输入是否在字典中找到的if语句。例如,假设用户希望在通讯簿中查找姓名,我将他们的响应保存到变量“findName”,该变量是字典的键。我们也可以说字典名是“contact”

问题是,每次执行此操作时,都会收到一条错误消息:“内置函数”或“方法”对象没有属性“getitem


我真的不知道我的代码哪里出错了,有人能告诉我正确的答案和解释吗

您有语法错误。
elif
后面不应该有冒号,has_key是一种方法:

if contact.has_key(findName) == True: 
    #Do something here. 
elif contact.has_key(findName) == False: 
    #Do something else.
但这当然可以简化为:

if contact.has_key(findName): 
    #Do something here. 
else:
    #Do something else.

您有一个语法错误。
elif
后面不应该有冒号,has_key是一种方法:

if contact.has_key(findName) == True: 
    #Do something here. 
elif contact.has_key(findName) == False: 
    #Do something else.
但这当然可以简化为:

if contact.has_key(findName): 
    #Do something here. 
else:
    #Do something else.

您没有调用has_key方法

应该是

if contact.has_key(findName) == True: 
    #Do something here. 
elif contact.has_key(findName) == False: 
    #Do something else.
一种更具python风格的方法是在中使用
,您不需要检查可以使用
else
的错误条件

if findName in contact: 
    #Do something here. 
else: 
    #Do something else.

您没有调用has_key方法

应该是

if contact.has_key(findName) == True: 
    #Do something here. 
elif contact.has_key(findName) == False: 
    #Do something else.
一种更具python风格的方法是在
中使用
,您不需要检查可以使用
else
的错误条件

if findName in contact: 
    #Do something here. 
else: 
    #Do something else.

@GWW我恐怕没有:
文件“”,第3行elif:pass^SyntaxError:invalid syntax
对不起,我想这个问题一定是被编辑过了,因为冒号已经不存在了。@GWW我恐怕没有:
文件“”,第3行elif:pass^SyntaxError:invalid syntax
对不起,我想这个问题一定是被编辑了,因为冒号已经不存在了。@Jr:刚开始的时候很容易犯错误out@Jr.字体当你刚开始的时候,很容易犯错误