题目描述
实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

#!/usr/bin/env python
# coding=utf-8
#methed 1
def replace_1(s):
	return s.replace('\x20','%20')

#methed 2
def replace_2(s):
	t=''
	c=0
	l=str.split(s)
	for i in l:
		t+=i
		if c<len(l)-1:
			t+='%20'
		c+=1
	return t
#medthed 3
def replace_3(s):
	import re
	return re.sub('\s','%20',s)

备注:这是我在看了别人实现的算法后,自己写了两个算法.
第一种用字符替换方式,需要留意的地方是 空格在python里用 \x20 这个十六进制数表示.
第二中是自己瞎摸索的,思路就是首先将待处理的带空格的字符串先通过str.split()分割后转换为列表,然后进行遍历,并将值直接传给一个新的字符串,在这个过程中,可以顺带把需要替换的字符也一并添加进来.
第三中方式用的是正则表达式,和字符串替换类似.

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐