字符串split切割逻辑
本质上-初始一个子串,每遇到一个切分点,就新生成一个子串。
‘dddd’,按照d切割,每碰到一个d就新生成一个子串,并将旧子串加入到结果列表中
def split(string, sep):
idx = 0
result = []
sub_string = ''
while idx < len(string):
if string[idx:idx+len(sep)] == sep:
result.append(sub_string)
sub_string = ''
idx += len(sep)
else:
sub_string += string[idx]
idx += 1
result.append(sub_string)
return result
split('wwwwwwwwwddddwwwwwwwwwwww', 'd')
'''
['wwwwwwwww', '', '', '', 'wwwwwwwwwwww']
'''