美文网首页
Python 利用切片操作,去除字符串首尾的空格

Python 利用切片操作,去除字符串首尾的空格

作者: 跟我去北方吧 | 来源:发表于2018-02-07 10:53 被阅读0次

    本文是廖雪峰Python教学切片章节的课后习题;
    原题目是:

    利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法;
    # 测试时调用trim函数,最后打印‘测试成功’,表明功能已经实现:
    if trim('hello  ') != 'hello':
        print('测试失败!')
    elif trim('  hello') != 'hello':
        print('测试失败!')
    elif trim('  hello  ') != 'hello':
        print('测试失败!')
    elif trim('  hello  world  ') != 'hello  world':
        print('测试失败!')
    elif trim('') != '':
        print('测试失败!')
    elif trim('    ') != '':
        print('测试失败!')
    else:
        print('测试成功!')
    

    本题实现思路是递归:trim(str)抽象意义就是移除首尾空格,那么添加判断进行递归即可
    代码如下:

    
    #切片
    #利用切片操作,实现一个trim()函数,
    #去除字符串首尾的空格,注意不要调用str的strip()方法:
    #使用递归函数
    
    def trim(str):
        if(str==''):
            return str
        elif (str[0]!=' ')and(str[-1]!=' '):
            return str
        elif str[0]==' ':
            return trim(str[1:])
        else :
            return trim(str[0:-1])
    
    
    
    
    def main():
        if trim('hello  ') != 'hello':
            print('测试失败!')
        elif trim('  hello') != 'hello':
            print('测试失败!')
        elif trim('  hello  ') != 'hello':
            print('测试失败!')
        elif trim('  hello  world  ') != 'hello  world':
            print('测试失败!')
        elif trim('') != '':
            print('测试失败!')
        elif trim('    ') != '':
            print('测试失败!')
        else:
            print('测试成功!')
    
    if __name__ == '__main__':
        main()
    

    相关文章

      网友评论

          本文标题:Python 利用切片操作,去除字符串首尾的空格

          本文链接:https://www.haomeiwen.com/subject/yrsozxtx.html