我的函数有三个字符串参数,即字符串,搜索和替换。如果搜索参数是空字符串,则该函数应该在第一个参数之前插入可替换参数,在旧字符串的每个字符之间,以及旧字符串的最后一个字符之后。以下是我到目前为止所做的事情:
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
答案 0 :(得分:1)
重构你的代码:
if x=='':
pass
elif x in s:
pass
elif x not in s:
pass