• (七)python3 切片


    切片:取一个 list 或 tuple 的部分元素是非常常见的操作

    >>> L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']
    
    #笨办法:之所以是笨办法是因为扩展一下,取前 N 个元素就没辙了。
    >>> [L[0], L[1], L[2]]
    ['Michael', 'Sarah', 'Tracy']
    
    
    #取前 N 个元素,也就是索引为 0-(N-1)的元素,可以用循环:
    >>> r = []
    >>> n = 3
    >>> for i in range(n):
    ... r.append(L[i])
    ...
    >>> r
    ['Michael', 'Sarah', 'Tracy']
    

    对任何范围[start:end],我们可以访问到包括 start 在内到 end(不包括 end)的所有字符,换句话说,假设 x 是[start:end]中的一个索引值,那么有: start<= x < end

    >>> aString = 'abcd'
    >>> len(aString)
    4

    正向索引:索引值开始于 0,结束于总长度减 1(因为我们是从 0 开始索引的).

    final_index = len(aString) - 1
    = 4 - 1
    = 3
    
    >>> aString[0]
    'a'
    >>> aString[1:3]
    'bc'
    >>> aString[2:4]
    'cd'
    >>> aString[4]
    Traceback (innermost last): File "<stdin>", line 1, in ?
    IndexError: string index out of range
    

    反向索引:在进行反向索引操作时,是从-1 开始,向字符串的开始方向计数,到字符串长度的负数为索引的结束,

    final_index  = -len(aString)
    = -4
    >>> aString[-1]
    'd'
    >>> aString[-3:-1]
    'bc'
    >>> aString[-4]
    'a'
    

      

    默认索引:如果开始索引或者结束索引没有被指定,则分别以字符串的第一个和最后一个索引值为默认值。

     如果开始索引或者结束索引没有被指定,则分别以字符串的第一个和最后一个索引值为默认值。

    >>> aString[2:]
    'cd'
    >>> aString[1:]
    'bcd'
    >>> aString[:-1]
    'abc'
    >>> aString[:]
    'abcd'
    #注意:起始/结束索引都没有指定的话会返回整个字符串.
    

      

  • 相关阅读:
    QQ企业通--客户端登陆模块设计---知识点2
    C# Show()与ShowDialog()的区别-----转载
    docker入门学习
    人生感悟
    mysql权限管理命令
    JAVA程序员工作常用英语(细心整理)
    spring知识梳理
    快速搭建MHA
    MySQL Performance Schema都建议开启哪些监控采集指标(除了默认自动开启的指标)
    慢SQL引发MySQL高可用切换排查全过程
  • 原文地址:https://www.cnblogs.com/a-ant/p/10940078.html
Copyright © 2020-2023  润新知