当前位置 博文首页 > 解决python列表list中的截取问题

    解决python列表list中的截取问题

    作者:皮皮程序员 时间:2021-06-06 18:17

    List(列表)作为python中使用最频繁的数据类型,如果能够把列表掌握,那么对于Python的掌握是有很大帮助的。

    并且列表的元素的值是可以修改的

    List的格式:(列表中的元素可以是字符串类型,也可以是数字类型,布尔型等等)

    #Author:LJZ
    list=['123','abc',0,True]
    for i in range(4):
        x=list[i]
        print(x)

    执行结果:

    123
    abc
    0
    True

    对于列表的截取操作(这个操作里面有一些细节,下面我总结了一下)

    注意:列表的正向索引下标是从零开始,不是1,反向索引是到-1结束,不是0

    截取的格式

    变量[头下标:尾下标]

    正向索引(01234...)

    1.只有头下标i和冒号(代表的是从该头下标i的元素开始截取,一直到最后)

    2.只有冒号尾下标i(代表的是从开始一直截取到i-1的元素)

    3.头下标i,冒号和尾下标j都有(代表的是从i一直截取到j-1的元素)

    例程如下:

    #Author:LJZ
    list=['123','abc',0,True]
    x=list[1:]
    y=list[:3]
    z=list[2:3]
    print(x)
    print(y)
    print

    结果如下:

    ['abc', 0, True]
    ['123', 'abc', 0]
    [0]

    反向索引(......-2-1)

    1.只有头下标i和冒号(代表的是从该头下标i的元素开始截取,一直到最后)

    2.只有冒号尾下标i(代表的是从开始一直截取到i-1的元素)

    3.头下标i,冒号和尾下标j都有(代表的是从i一直截取到j-1的元素

    例程如下:

    #Author:LJZ
    list=['123','abc',0,True]
    x=list[-3:]
    y=list[:-2]
    z=list[-3:-1]
    print(x)
    print(y)
    print(z)

    结果如下:

    ['abc', 0, True]
    ['123', 'abc']
    ['abc', 0]

    加入步长的截取:

    前面讲到的截取是没有带步长的。如果想隔一定元素个数去截取列表,可以选择使用带有步长的截取方式

    格式:

    变量[头下标:尾下标:步长]

    例如截取第三个到第五个元素,如果隔两个步长截取的话,就会截取到元素3和元素5,元素4就被跳过了

    例程:

    #Author:LJZ
    list=['123','abc',0,True,"12345"]
    x=list[1:4:2]
    print(x)

    结果:

    ['abc', True]

    补充:python 列表截取分解

    #!/usr/bin/env python
    #coding:utf8 
    list1 = [ 'tzh', 786 , 2.23, 'thz2', 70.2 ]
    list2 = [123, 'tzh'] 
    print list1               # 输出完整列表list1
    print list1[0]            # 输出列表list1的第一个元素
    print list1[1:3]          # 输出list1第二个至第三个的元素 
    print list1[2:]           # 输出list1从第三个开始至列表末尾的所有元素
    print list2 * 2        # 输出列表list2两次
    print list1 + list2    # 打印组合的列表list1,list2

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持站长博客。

    js
    下一篇:没有了