我得到这个工作,看起来很简单,但它不会。
bob = raw_input("What do you need?")
if bob is "Hello":
sayhello()
def sayhello():
print"yo"
答案 0 :(得分:2)
使用值比较运算符代替==
,is
检查引用(short answer I wrote on is
及其official doc)。
def sayhello():
print"yo"
bob = raw_input("What do you need?")
if bob == "Hello":
sayhello()
答案 1 :(得分:1)
mrdomoboto为您提供解决方案。但是一些背景信息从来都不是坏事。
如果两个变量指向同一个对象,则 is
返回True。
>>> a = [2, 3]
>>> b = a
>>> b is a
True
>>> b == a
True
>>> b = a[:]
>>> b is a
False
>>> b == a
True
答案 2 :(得分:1)
您的问题是您说的“是”不是==。另外,在使用它之前,必须先定义sayhello()。同时在打印功能周围放置括号。您还应该从输入中删除原始数据。
要解决此问题,请输入以下代码:
def sayhello():
print ("yo")
bob = input("What do you need?")
if bob == "Hello":
sayhello()