廖雪峰python教程:利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法

跟着廖雪峰的官方网站学习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   ")))
好好学习吧。。。

你可能感兴趣的:(python)