利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法
分析:
分两步实现,先去除字符串前面的空格,再去除字符串后面的空格。
第一步,用一个循环去除字符串前面的空格
传入的字符串为s,以字符串初始长度len(s)作为最大循环次数。判断第一个字符是不是空格,如果是,就从第二个字符开始截取字符串(原字符串的第二个字符成为新字符串的第一个字符,所以每次都是判断新字符串第一个字符是否为空格);如果不是空格,说明字符串前面部分已经没有空格,跳出这个循环。
第二步,用另一个循环去除字符串后面的空格
以字符串长度len(s)作为最大循环次数(此时的字符串已去除前面所有空格)。判断最后一个字符是不是空格,如果是,就截取到倒数第二个字符(原字符串的倒数第二个字符成为新字符串的最后一个字符,所以每次都是判断新字符串最后一个字符是否为空格);如果不是空格,说明字符串后面部分已经没有空格,跳出这个循环。
代码实现:
# -*- coding: utf-8 -*-
def trim(s):
for i in range(len(s)):
if s[0] == ' ':
s = s[1:]
else:
break
for j in range(len(s)):
if s[-1] == ' ':
s = s[:-1]
else:
break
return s