我正在尝试删除字符串中大括号之间的所有内容,并尝试递归地执行此操作。x
当递归结束时我会返回这里,但不知何故函数doit
会返回None
这里。尽管x
在 def 中打印会打印正确的字符串。我究竟做错了什么?
strs = "i am a string but i've some {text in brackets} braces, and here are some more {i am the second one} braces"
def doit(x,ind=0):
if x.find('{',ind)!=-1 and x.find('}',ind)!=-1:
start=x.find('{',ind)
end=x.find('}',ind)
y=x[start:end+1]
x=x[:start]+x[end+1:]
#print(x)
doit(x,end+1)
else:
return x
print(doit(strs))
输出:
None