请实现一个函数,将一个字符串s中的每个空格替换成“%20”。
例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
数据范围:。保证字符串中的字符为大写英文字母、小写英文字母和空格中的一种。
def tk(str,find_str,re_str): if not find_str in str: return str #如果找不到返回原字符串 l=[];re_str_index=[] for i in range(0,len(str)): l.append(str[i:i+len(find_str)]) #按find_str长度分割原字符串保存到列表中 for i in range(len(l)): if l[i]==find_str: l[i]=re_str #替换字符串 re_str_index.append(i) #保存替换时的索引位置 for i in range(len(l)): for j in re_str_index: if i==j: l[i+1:i+len(find_str)]="" #使find_str中对应的l首个字符为空,方便后续合并 new_str_lis=[] for i in range(len(l)): if not i in re_str_index: new_str_lis.append(l[i][0]) #如果index_l(即i)不在re_str_index里,则读取l[i]首个字符 else: new_str_lis.append(l[i]) #否则直接读取替换时的字符串,即读取re_str等价于l[i] return "".join(new_str_lis) print(tk(str="We Are Hap%20py",find_str=" ",re_str="%20")) print(tk(str="We Are Hap%20py",find_str=" Ar",re_str="%20")) print(tk(str="We Are Hap%20py",find_str="3",re_str="%20"))