2015-12-03 41 views
0

这是Python的一个非常简单的功能与字符串比较蟒蛇意外行为

def not_string(str1): 
    if str1[0:3] is "not": 
     return str1 
    else: 
     return 'not ' + str1 

str1 = 'not bad' 
print(not_string(str1)) 

上述代码的输出应该是“不坏”,但Python是显示输出为“不不坏。任何人都可以解释我在这里失踪?

回答

2

is运营商在Python试验对象平等,而不是价值的平等。你需要的是你的if语句是if str1[0:3] == "not":