跟着廖雪峰的官方网站学习python,在做切片的练习时试着自己编程,原题目为:利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()
方法。
下面是自己编的程序(特别啰嗦。。。)
def trim(s):
flag = 0
if len(s)==0:
m=0
i=0
return s
else:
m = -1
for i in range(len(s)):
if s[m] == " ":
m+=-1
else:
break
for i in range(len(s)):
if s[i] == " ":
i+=1
else:
break
print(s[i:m+len(s)],len(s[i:m+len(s)]))
s1 = ""
trim(s1)
print("halo")
然后看了其他人回复,都很简洁(人与人的差距嘛。。。)
def trim(s):
if len(s) == 0:
return s
else:
while s[0] == " ": # 若字符串首位为空格
s = s[1:] # 则从第二个元素开始对后部分切片
while s[-1] == " ": # 若字符串末位为空格
s = s[:-1] # 则从倒数第二个元素开始对前部分切片
return s
print(trim(" 22e "),len(trim(" 22e ")))
好好学习吧。。。