google python class strings2.py exercise E

时间:2014-05-17 17:42:41

标签: python string

这条线路会发生什么?为什么-1?

if n != -1 

电子。不错 给定一个字符串,找到第一个外观 子串'不'和'坏'。如果'坏'跟随 '不',取代整个'不'......'坏'子串 有良好的'。 返回结果字符串。 所以'这顿晚餐不是那么糟糕!'收益率: 这顿晚餐很棒!

def not_bad(s):
    n = s.find('not')
    b = s.find('bad')
    if n != -1 and b != -1 and b > n:
        s = s[:n] + 'good' + s[b+3:]
    return s

2 个答案:

答案 0 :(得分:2)

-1表示找不到子字符串。

来自official python documentation

  

返回s中找到子字符串sub的最低索引   该sub完全包含在s [start:end]中。失败时返回-1。   开始和结束的默认值以及负值的解释是   与切片相同。

答案 1 :(得分:0)

str.find(sub [,start [,end]]) 返回找到substring sub的字符串中的最低索引,这样sub包含在切片s [start:end]中。可选参数start和end被解释为切片表示法。 如果未找到sub,则返回-1。