• [py]str list切片-去除字符串首尾空格-递归思想


    取出arr的前几项

    #方法1
    print([arr[0], arr[1]])
    #方法2
    arr2 = []
    for i in range(2):
        arr2.append(arr[i])
    print(arr2)
    
    #方法3 -切片
    print(arr[:2])
    

    切片操作

    参考

    可以操作序列,如str list

    • 取出最后一项
    • 取出第一项
    • 取出前10项 s[:10]
    • 取出后10项 s[-10:]
    • 删除首项 s[1:]
    • 删除最后一项 s[:-1]
    ## 第一波
    arr = [0, 1, 2, 3, 4]
    
    #返回最后一项
    print(arr[-1])
    
    #返回返回倒数第二项 不包含 arr[-1]
    print(arr[-2:-1])
    
    
    ## 第二波
    print(range(10))
    print(list(range(10)))
    arr = list(range(100))
    #返回前10项
    print(arr[:10])
    #返回后10项
    print(arr[-10:])
    
    #返回10-20项
    print(arr[10:20])
    # 前十项,隔2个取一个
    print(arr[:10:2])
    #复制一个
    arr2 = arr[:]
    
    
    #删除第一项
    print(arr[1:])
    
    #删除最后一项
    print(arr[:-1])
    
    

    实战切片 去除字符串首尾空格

    思路1: 去除字符串首尾空格

    ## 去除字符串首尾空格
    def trim(s):
        # 找出首部位置
        for i in range(len(s)):
            if s[i] != ' ':
                start = i
                break
        # 找出尾巴空格位
        for i in range(len(s)):
            if s[-i] != ' ':
                end = len(s) + 1
                break
        # 取出非空
        print(s[start:end])
    
    
    trim('  mao   ')
    

    思路2: 去除字符串首尾空格 -函数的递归

    ## 3种情况
    # 首项为空
    # 尾项为空
    # 字符串为空
    
    def trim(s):
        #如果s为空
        if s == '':
            return ''
        else:
            # 如果s[0]为空,则抛弃
            if s[0] == ' ':
                return trim(s[1:])
    
            # 如果s[-1]为空,则抛弃
            elif s[-1] == ' ':
                return trim(s[:-1])
            else:
                return s
    
    
    s = trim(' s a   ')
    print(s)
    
  • 相关阅读:
    docker映射端口无法访问
    Tomcat日志分析
    linux服务器性能测试
    mysql库表结构对比工具
    网络基础知识,不懂看这里
    Python之redis、mysql进程守护
    linux文件查找工具
    nginx解决跨域问题
    redis插入单个较大的键值
    linux系统安全巡检脚本
  • 原文地址:https://www.cnblogs.com/iiiiiher/p/8328340.html
Copyright © 2020-2023  润新知