zoukankan      html  css  js  c++  java
  • python的索引与切片

    索引(index)是什么?
    在字符串、列表和元组中,从最左端起记录的位置叫做索引,索引用数字表示,起始位置从0开始;
    eg: ['test0', 'test1', 'test2']
        其中'test0'所在的位置就是索引0,'test1'所在的位置就是索引1,'test2'所在的位置就是索引2;
    字符串、列表、元组的对打索引是它们的长度-1(len-1);
    通过索引查找对应元素:
    eg: numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
        print(numbers[6])
    返回结果应为:7
    切片是什么?
    对相隔一定范围索引内的元素进行访问(查看)叫切片;
    切片通过在中括号内把相隔的两个索引包括的元素查找出来,[x: y]左侧包含右侧不包含;
    eg: numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
        print(numbers[2: 6])
    返回结果应为:[3, 4, 5, 6]
    列表索引获取与修改:
    用法:
    list[index] = new_item
    ps:数据的修改只能在存在的索引范围内,且无法通过添加新的索引方式进行赋值;
    eg: numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
        numbers[3] = 0
        print(numbers)
    返回结果应为:[1, 2, 3, 0, 5, 6, 7, 8, 9]
    列表的内置函数index:
    功能:查找元素在列表中的索引;
    用法:
    list.index(item)
    参数:
    item:要查找的元素;
    eg: numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
        print(numbers.index(6))
    返回的结构应为:5
    列表的内置函数pop:
    功能:通过索引删除并获取列表中的元素;
    用法:
    list.pop(index)
    参数:
    index:要删除列表中的索引置;
    ps:pop会删除位于指定索引的元素并返回;
    eg: numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
        pop_item = numbers.pop(7)
        print(numbers)
        print(pop_item)
    返回结果应为:[1, 2, 3, 4, 5, 6, 7, 9]
                  8
    列表的内置函数del:
    功能:删除索引;
    用法:
    del list[index]
    ps:del会直接删除位于指定索引的元素无返回值;
    eg:numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
        del numbers[3]
        print(numbers)
    返回结果应为:[1, 2, 3, 5, 6, 7, 8, 9]

    索引切片在元组中的特殊性:
    1、可以和列表一样获取索引与切片;
    2、元组函数index和列表用法一致;
    3、元组无法通过索引修改、删除元素;
    字符串的索引与获取:
    1、字符串的索引规则、切片和索引的获取与列表相同,这里不做赘述;
    2、字符串无法通过索引修改、删除;
    字符串的内置函数find和index:
    功能:获取元素的索引位置;
    用法:
    string.index(item)
    string.find(item)
    参数:
    item:要查询的元素
    eg: number = 'zhangsan'
        print(number.index('g'))
    返回结果应为:4
    find函数的使用与index相同,不同点是find如果查找不到结果会返回-1,而index则会直接报错;
    eg: number = 'zhangsan'
        print(number.find('L'))
    返回结果应为:-1
  • 相关阅读:
    【bzoj2242】[SDOI2011]计算器
    1109解题报告
    【bzoj3239】Discrete Logging
    【bzoj2480】Spoj3105 Mod
    【POJ1811】Prime Test
    【bzoj3667】Rabin-Miller算法
    【HDU2138】How many prime numbers
    卢卡斯定理
    线段树2
    畅快的甩卖
  • 原文地址:https://www.cnblogs.com/BrotherCat/p/14963893.html
Copyright © 2011-2022 走看看