• list列表切片方法汇总


    python为list列表提供了强大的切片功能,下面是一些常见功能的汇总

    """
    使用模式: [start:end:step]
        其中start表示切片开始的位置,默认是0
        end表示切片截止的位置(不包含),默认是列表长度
        step表示切片的步长,默认是1
        当start是0时,可以省略;当end是列表的长度时,可以省略.
        当step是1时,也可以省略,并且省略步长时可以同时省略最后一个冒号.
        此外,当step为负数时,表示反向切片,这时start值应该比end值大.
        注意:切片操作创建了一个新的列表.
    """
    
    alist = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    
    print(alist[::])  # 返回包含原列表所有元素的新列表
    print(alist[::-1])  # 返回原列表的一个逆序列表
    print(alist[::2])  # [1, 3, 5, 7, 9] .取列表下标偶数位元素
    print(alist[1::2])  # [2, 4, 6, 8]  取列表下标奇数位元素
    print(alist[3:6])  # [4, 5, 6]  #取列表中下标3到6的值,步长是1
    print(alist[3:6:2])  # [4, 6] #取列表中下标3到6的值,步长是2
    
    print(alist[:10])  # [1, 2, 3, 4, 5, 6, 7, 8, 9]  . end大于列表长度时,取列表中所有元素,省略了步长1.
    print(alist[10:]) # []  . 表示从列表的第10位开始取,一直取到列表结果,步长是1.
    
    alist[len(alist):] = [10]  # 在列表的未尾添加一个元素
    print(alist) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
    alist[:0] = [-1,0]  # 在列表的头部插入元素. alist[:0] 相当于 alist[0:0] 再相当于 alist[0:0:1]
    print(alist) #[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
    alist[5:5] = [-6]  # 把列表的第6个位置替换成-6. 相当于alist[5:5:1] = [-6]
    print(alist) #[-1, 0, 1, 2, 3, -6, 4, 5, 6, 7, 8, 9, 10]
    
    alist = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    alist[:3] = ['A','B','C','D']  # 把alist的前3个元素换成['A','B','C','D']
    print(alist)  #['A', 'B', 'C', 'D', 4, 5, 6, 7, 8, 9]
    
    alist[3:] = ['E','F','G']  # 把列表第3个元素之后的元素替换成['E','F','G']
    print(alist) # ['A', 'B', 'C', 'E', 'F', 'G']
    
    alist = [1, 2, 3, 4, 5, 6]
    alist[::2] = [0]*3 # 替换列表下标是偶数的前三个元素,注意使用该方法时,列表下标是偶数的元素个数必须与后面替换的元素个数相等,否则报错
    print(alist) #[0, 2, 0, 4, 0, 6]
    
    alist[::2] = ['a','b','c'] # 跟上面一样的道理,只是替换的内容不一样
    print(alist) # ['a', 2, 'b', 4, 'c', 6]
    
    alist = [1, 2, 3, 4, 5, 6]
    alist[:3] = [] # 删除列表中前3个元素
    print(alist) # [4, 5, 6]
    
    
    alist = [1, 2, 3, 4, 5, 6]
    del alist[:3]  # 使用del关键字删除列表前3个元素
    print(alist) #[4, 5, 6]
    
    alist = [1, 2, 3, 4, 5, 6]
    del alist[::2]  # 删除列表元素,下标是偶数位的元素
    print(alist) #[2, 4, 6]
  • 相关阅读:
    activiti 任务节点 处理人设置【转】
    activiti 中的签收与委托 操作
    [转] shiro简单配置
    Angular-ui/bootstarp modal 主控制器与模态框控制器传值
    angular之$on、$emit、$broadcast
    AngularJs动态添加元素和删除元素
    angular.element
    angularJs的工具方法
    AngularJS $watch 监听
    AngularJs 延时器、计时器
  • 原文地址:https://www.cnblogs.com/z-qinfeng/p/12032296.html
Copyright © 2020-2023  润新知