1. 程式人生 > >20190120-自定義實現split方法

20190120-自定義實現split方法

多次 分隔 append 子字符串 font clas urn for lac

1. 實現字符串的split方法
Python split() 通過指定分隔符對字符串進行切片,如果參數 num 有指定值,則分隔 num+1 個子字符串

思路同自定義實現replace方法類型:

  1.先找出字符串中指定分隔字符的index,考慮可能出現多次的情況使用一個列表split_str_index存儲分隔字符的index

  2.使用result列表存儲分隔後的字符串列表

  3.當index不在split_str_index中的的時候拼接字符串,當index在split_str_index中的的時候的將已拼接的字符串append到result列表中,特別註意最後一定要判斷each判斷是否為空,來決定是否append一下

  4.考慮分隔次數,使用count來統計分隔次數

def customize_split(s,split_str= ,num=None):                
    result=[]
    split_str_index=[]
    for i in range(len(s)):
        if s[i:i+len(split_str)]==split_str:
            split_str_index.append(i)
    #存儲split_str的index
    if num==None:
        each =‘‘
        j
=0 while j<len(s): if j in split_str_index: result.append(each) each = ‘‘ j+=len(split_str) else: each +=s[j] j+=1 if bool(each): print(bool(each)) result.append(each)
else: each =‘‘ j=0 count =0 while j<len(s): if count<num and j in split_str_index: if bool(each): print(bool(each)) result.append(each) each = ‘‘ j+=len(split_str) count+=1 else: each +=s[j] j+=1 if bool(each): result.append(each) #最後一根據each是否為空決定是否要append一下,因為有可能else是最後執行也可能if是最後執行 return result print(customize_split(abcacabcacac,c))

20190120-自定義實現split方法