[下面问题的代码]
这个想法是扩展 python 的内置 split() 函数。这个函数需要两个字符串,一个需要拆分,第二个是第一个字符串中要省略和拆分的字符。此代码有效,但由于某种原因,此输入不会迭代最后一个逗号之后的任何内容。换句话说,无论这种格式的输入是什么,它都不会在最后的逗号后面附加任何内容。我不知道为什么。我已经逐行浏览了这段代码,但我找不到丢失它的地方。
为什么我的代码没有遍历最后一个逗号之后的任何字符?
def split_string(source,splitlist):
## Variables ##
output = []
start, start_pos , tracker = 0 , 0 , 0
## Iterations ##
for char in source:
start = source.find(char,start)
if char in splitlist:
tracker += 1
if tracker <= 1:
end_pos = source.find(char, start)
output.append(source[start_pos:end_pos])
start_pos = end_pos + 1
else:
start_pos+=1
else:
tracker = 0
return output
out = split_string("First Name,Last Name,Street Address,City,State,Zip Code",",")
print out