2.Python内置数据结构

内置数据结构/内置容器

lst.sort()排序
len(lst)长度函数
lst.count() 统计
lst.copy() 复制
lst.reverse()倒序
lst.remove()指定删除值
lst.index(b,2)查找索引值,查找b,从第2个索引开始到最后,直至找到其索引值(start,stop]
lst.clear()删除整个列表
lst.sort(reverse=True)
lst.append()增加索引值
lst.insert()插入索引值
lst.extend()增加列表
lst.pop()删除元素,针对索引值

列表 list

list是最常用的线性数据结构,是一系列元素的有序组合,并且是可变的

  • 初始化


    2.Python内置数据结构_第1张图片
    列表初始化
  • 下标/索引操作

Python中list的索引从0开始

2.Python内置数据结构_第2张图片
索引1

负数索引比表示从后往前,由-1开始,-1表示最后一个元素
2.Python内置数据结构_第3张图片
索引2

如果索引超出范围,将引发IndexError

  • 修改列表值


    2.Python内置数据结构_第4张图片
    修改列表值

修改元素的时候,如果超出索引范围,也会引发IndexError

2.Python内置数据结构_第5张图片
修改超出索引值

增加列表元素

  • append
    使用help(list)可以看到list有哪些方法
    append方法原地修改list,给list增加一个元素,append的方法的返回值是None
    2.Python内置数据结构_第6张图片
    append
  • insert
    增加的位置在其索引值前面
    2.Python内置数据结构_第7张图片
    insert插入

    insert操作的索引超出范围,如果是正索引,等效于append,如果是负索引,等效于insert(0.object)
    2.Python内置数据结构_第8张图片
    即使到索引100也是在后面直接插入

    2.Python内置数据结构_第9张图片
    从负数索引插入
  • extend
    extend可以是多个元素,可以是一个列表,可以使用help(lst.extend)查看方法用法【lst此为举例的列表名,可以随意】


    2.Python内置数据结构_第10张图片
    追加一个列表

删除列表元素

  • pop
    lst.pop(),默认即删除列表最后一个元素,并返回
    index默认为-1,如果index超出索引返回,会抛出IndexError


    2.Python内置数据结构_第11张图片
    删除最后一个元素3,并返回

    2.Python内置数据结构_第12张图片
    删除指定元素
  • remove
    pop是弹出索引对应的值,remove是删除最左边的一个值,pop针对的是索引,remove针对的是值
    remove的时候,如果值不存在,会抛出valueError
    2.Python内置数据结构_第13张图片
    删除从前往后的第一个元素

    2.Python内置数据结构_第14张图片
    列表中重复的1,也删除第一个出现的1
  • clear
    clear方法删除所有元素


    2.Python内置数据结构_第15张图片
    clear删除所有元素

查找/统计元素

  • index

index指定搜索的值,并规定从start开始和结束中查找指定值,根据值找索引
start包含,stop不包含

2.Python内置数据结构_第16张图片
index用法说明

2.Python内置数据结构_第17张图片
通过指定起始位置,查找b
  • count
    查找指定的值出现的次数统计


    2.Python内置数据结构_第18张图片
    count
  • len函数
    计算指定列表的长度


    2.Python内置数据结构_第19张图片
    len函数计算长度

修改列表

  • sort
    按照顺序排序后,在呈现列表


    2.Python内置数据结构_第20张图片
    sort排序

    倒序排序


    2.Python内置数据结构_第21张图片
    倒排
  • reverse


    2.Python内置数据结构_第22张图片
    反转排序
  • 其他方法copy
    如下图,将列表lst赋值给列表lst2,然后将列表lst2中的值去掉remove(2),而此时查看lst,其值2也被移除了,原因指针指向的内存地址一样的


    2.Python内置数据结构_第23张图片
    remove删除

    而若想只移除lst2,但却对lst没有影响,该使用什么方法呢?使用copy即是将lst复制一份,其内存地址的指向也是不一样的。


    2.Python内置数据结构_第24张图片
    使用copy拷贝

    从下图可以看出,赋值和copy复制的区别,但是copy并不是一个深层次的拷贝,只是一层拷贝。
    2.Python内置数据结构_第25张图片
    id值即地址空间不同

你可能感兴趣的:(2.Python内置数据结构)