zoukankan      html  css  js  c++  java
  • python3中的切片操作

    python中的切片非常方便,可以灵活的对list、tuple、string、range进行操作,得到想要的数据;

    平时我们在访问序列中的元素,通过索引可以正向访问,也可以反向访问,切片同样也可以,下面举例我常用的操作方法:

    切片的语法为:

    [start_index,end_index,step]

    start_index:起始索引位置

    end_index:结束索引位置

    step:步长

    切片的功能:从起始位置到结束位置的前一个位置,按步长来提取数据并生成新的对象,并且不会改变原数据类型;

    举例1,都写全:

    L = [2,4,5,6,2,6,0,4]  #长度8

    result = L[2:6:1]

    print(result)

    结果:[5,6,2,6]

    可以看出,按步长1,从索引2开始,到索引6-1结束的所有元素

    备注:以上的这些操作也同样适用于字符串或者元组中,对字符串进行反向显示,使用切片可以非常方便的做到;

    举例2,省略步长:

    L = [2,4,5,6,2,6,0,4]  #长度8

    result = L[2:6]

    print(result)

    结果:[5,6,2,6]

    可以看出,步长默认为1,可省略

    举例3,开始索引省略:

    L = [2,4,5,6,2,6,0,4]  #长度8

    result = L[:5]

    print(result)

    结果:[2,4,5,6,2]

    可以看出,按步长1,从第一个元素开始,到索引5-1结束的所有元素

    举例4,结束索引省略:

    L = [2,4,5,6,2,6,0,4]  #长度8

    result = L[3:]

    print(result)

    结果:[6,2,6,0,4]

    可以看出,按步长1,从索引3元素开始,到最后一个元素

    举例5,开始、结束索引都省略:

    L = [2,4,5,6,2,6,0,4]  #长度8

    result = L[:]

    print(result)

    结果:[2,4,5,6,2,6,0,4]

    可以看出,相当于从第一个到最后一个元素,复制了一个新的序列

    举例6,步长非1但为正整数:

    L = [2,4,5,6,2,6,0,4]  #长度8

    result = L[2:6:2]

    print(result)

    结果:[5,2]

    可以看出,按步长2,从索引2元素开始,到到索引6-1元素结束的所有元素

    举例7,步长为负整数:

    L = [2,4,5,6,2,6,0,4]  #长度8

    result = L[-2:-7:-3]

    print(result)

    结果:[0,6]

    可以看出,按步长2,从索引-2元素开始,到到索引-7+1元素结束的所有元素

    备注:切片时一定要保证步和的方向与开始、结束的方向一致,否则可能会得到一个空序列

     

    举例8,开始、结束省略,步长-1,可得到一个反向的序列:

    L = [2,4,5,6,2,6,0,4]  #长度8

    result = L[::-1]

    print(result)

    结果:[4, 0, 6, 2, 6, 5, 4, 2]

    可以看出,开始、结束索引都省略,可以得到一个反向的序列

     

     

  • 相关阅读:
    Linux命令(九)——系统监视和进程控制
    Linux命令(八)——vi编辑器的使用
    Linux命令(七)——网络配置和网络通信
    Linux命令(六)——软件包管理(安装应用程序)
    Linux命令(五)——磁盘操作及文件系统的管理
    Linux命令(四)——文件权限管理
    Linux命令(三)——用户、群组管理命令
    Linux命令(二)——目录和文件管理命令
    mariadb读写分离
    KVM虚拟机热迁移
  • 原文地址:https://www.cnblogs.com/banxiade/p/12638491.html
Copyright © 2011-2022 走看看