• 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]

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

     

     

  • 相关阅读:
    SpringBoot打包的程序部署到服务器后一直在后台运行
    ubuntu搭建mysql数据库
    解决ubuntu16.04 ‘E: 无法获得锁 /var/lib/dpkg/lock-frontend
    项目部署篇之——下载安装Xftp6,Xshell6
    linux 文件 chgrp、chown、chmod
    linux 正确的关机方法
    linux 常用命令
    spring 事务
    Spring 中 ApplicationContext 和 BeanFactory 的区别
    java 异常处理
  • 原文地址:https://www.cnblogs.com/banxiade/p/12638491.html
Copyright © 2020-2023  润新知