IF语句不适用于Python

时间:2014-06-10 18:00:56

标签: python if-statement

我正在努力让这个程序工作:我有两个列表“a”和“b”,我必须输入一个出现在两个列表中的单词,在这种情况下是“cat”,但它确实不接受猫并说它是错的。请帮忙!

a=['bird', 'cat', 'dog']
b=['cat', 'mouse','hamster']
print(a,b)
same=(set(a) & set(b))


guess=input("what word is the same in both lists ?")
if guess=='same':
    print ("well done")
else:
    print ("wrong")

3 个答案:

答案 0 :(得分:2)

我认为您正在尝试检查字符串guess是否是集合same的元素。如果您正在尝试这样做,则应使用in运算符,如下所示:

if guess in same:
    print ("well done")
else:
    print ("wrong")

答案 1 :(得分:0)

set(a) & set(b)返回一个包含一个元素的集合,但您将guess与字符串进行比较。您不想查看用户是否输入了"same",您想要查看他输入的内容是否是集合same内的字符串。一种可能性是if set([guess]) == same

另外,如果您使用的是Python 2,则应使用raw_input而不是input来将输入作为字符串。

答案 2 :(得分:0)

不检查字符串“same”上的相等性,但是在变量名上相同。另外,'same'是一个集合,因此要检查是否在该集合中使用if guess in same: