使用python(1)从旧字符串中创建一个新字符串

时间:2014-02-16 05:02:28

标签: python

我的函数有三个字符串参数,即字符串,搜索和替换。如果搜索参数是空字符串,则该函数应该在第一个参数之前插入可替换参数,在旧字符串的每个字符之间,以及旧字符串的最后一个字符之后。以下是我到目前为止所做的事情:

def main():
    s='I am going go'
    x=""
    y='aa'

    print(rep_str(s,x,y))

def rep_str(s, x, y):

    if x in s:
        result = ''
        i = 0
        while i < len(s):
            if s[i : i + len(x)] == x:
                result += y
                i += len(x)
            else:
                result += s[i]
                i += 1


    elif x not in s:
        result= s
    else:
        if x=="":
            result=y        
            for ch in s:
                result+=(ch+y)   

    return result
main()  

当我得到满意的结果时,我分别开发了每个条件并将它们完全放在函数中。我的最后一个条件是在单独的运行中正常工作,但它在功能模块中不起作用。我不知道代码有什么问题。 如果有人能给我一些指示,我将不胜感激。谢谢

我最后一个条件的输出应该是:

aaIaa aaaaamaa aagaaoaaiaanaagaa aagaaoaa

1 个答案:

答案 0 :(得分:1)

重构你的代码:

if x=='':
    pass
elif x in s:
    pass
elif x not in s:
    pass