zoukankan      html  css  js  c++  java
  • [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)
    
  • 相关阅读:
    【redis】--安全
    【redis】-- 数据备份和恢复
    2018.2.8 cf
    寒假零碎的东西 不定时更新补充.......
    hdu 1018
    2018寒假acm训练计划
    UVAlive 7466
    母函数
    简单数学题(水的不能在水的题了)
    随便写写的搜索
  • 原文地址:https://www.cnblogs.com/iiiiiher/p/8328340.html
Copyright © 2011-2022 走看看